open-menu closeme
Home
Archives
About
instagram twitter github rss
  • Kubernetes Operator 新手开发一文入门

    calendar Sep 15, 2024 · 17 min read · kubernetes 中文  ·
    Share on: twitter facebook linkedin copy
    Kubernetes Operator 新手开发一文入门

    概述 Kubernetes Operator 简介 Kubernetes Operator 是一类 Kubernetes 控制器,它能够自动化管理复杂的应用程序和其生命周期,通常被用来管理有状态应用(如数据库、缓存等)。通过扩展 Kubernetes API,Operator 可以将日常操作流程(如安装、升级、扩展、备份等)转换为 Kubernetes 原生对象,从而实现自动化和声明式管理。 为什么使用 Operator Operator 通过将 DevOps 团队日常管理应用的运维知识和流程编码化,使复杂的应用程序管理变得简单和自动化。在 Kubernetes 中,Operator 可以持续监控自定义资源,并自动进行相应操作,确保 …


    Read More
  • 【算法刷题系列】第9天 151. 反转字符串中的单词, 55. 右旋字符串, 459. 重复的子字符串

    calendar Sep 10, 2024 · 4 min read · algorithm 中文  ·
    Share on: twitter facebook linkedin copy

    学习内容 学习文档 字符串总结:这篇文档总结了字符串相关的常用操作和处理方法。特别是如何高效地使用 substr、split、reverse 等库函数处理字符串问题。它还包含了各种算法的讨论,例如 KMP 算法如何处理字符串匹配问题,具体可以参考 KMP 模式匹配的高效实现。 双指针总结:双指针是一种常见且高效的算法思路,尤其在处理字符串和链表问题时特别有效。文档详细介绍了双指针在解决问题中的应用场景,如链表反转、寻找和计算字符串中的特定内容、左右边界的处理等。这个方法也经常用于简化两个嵌套的循环,使时间复杂度从 O(n^2) 降到 O(n)。 收获总结 字符串是一种特殊的数组,有限字符序列: 字符串本质上就是一系列字符的集合,因此 …


    Read More
  • 如何加节点到Kubernetes集群

    calendar Sep 10, 2024 · 3 min read · kubernetes 中文  ·
    Share on: twitter facebook linkedin copy
    如何加节点到Kubernetes集群

    方法一:基于 Bootstrap Token 的加入方式 原理 Bootstrap Token 是一种临时的令牌,用于新节点在加入集群时进行身份验证。 新节点使用 kubeadm join 命令,提供 --token 和 --discovery-token-ca-cert-hash 参数,与控制平面 API 服务器建立安全连接。 控制平面验证 token 的有效性,并向新节点提供所需的证书和配置文件,使其能够加入集群。 具体步骤 1. 在控制平面节点上生成 Bootstrap Token 使用以下命令生成新的引导令牌: 1kubeadm token create --print-join-command 输出示例: 1kubeadm …


    Read More
  • 【算法刷题系列】第8天 344. 反转字符串, 541. 反转字符串 II, 54. 替换数字(第八期模拟笔试)

    calendar Sep 9, 2024 · 3 min read · algorithm 中文  ·
    Share on: twitter facebook linkedin copy

    学习内容 收获总结 字符串和字节数组的转换:在 Go 语言中,字符串是不可变的。对于需要修改字符串的操作,如反转、替换等,我们通常会先将字符串转换为 []byte 类型。这是因为 []byte 是可变的,可以通过索引操作直接修改其内容。在许多字符串操作中,将字符串转换为字节数组是一个有效的优化策略,尤其是在需要大量的字符替换和处理时,这种转换能够提高性能和代码的可读性。 unicode.IsDigit 和 rune 的用法:在处理字符串中数字字符时,使用 unicode.IsDigit 函数来判断字符是否为数字非常便捷。unicode.IsDigit 适用于所有 Unicode 字符,能够处理多字节字符,如中文或特殊字符。 …


    Read More
  • 【算法刷题系列】第7天 第454题.四数相加II, 383. 赎金信, 第15题. 三数之和,第18题. 四数之和

    calendar Aug 23, 2024 · 5 min read · algorithm 中文  ·
    Share on: twitter facebook linkedin copy

    学习内容 学习文档: 哈希表理论基础 收获总结 哈希表的基本应用: 哈希表是一种通过键值对存储数据的数据结构,具有O(1)的平均查找时间复杂度。其优势在于能够快速判断一个元素是否存在于集合中。通过哈希函数将键映射到存储位置,我们可以在常数时间内完成插入、删除和查找操作。这在需要频繁查找或去重的算法问题中非常有用。 哈希函数的理解与设计: 哈希函数是哈希表的核心,负责将输入(键)映射到特定的存储桶位置。一个好的哈希函数应当能够均匀地分布输入数据,避免哈希碰撞的发生。哈希碰撞是指不同的输入映射到了同一存储桶,这会导致性能下降。常用的哈希函数设计包括除留余数法、乘积法和平方取中法等。 哈希碰撞及其处理策略: 哈希碰撞是无法完全避免的,因此 …


    Read More
  • 【算法刷题系列】第6天 242. 有效的字母异位词, 349. 两个数组的交集, 202. 快乐数, 1. 两数之和

    calendar Aug 22, 2024 · 3 min read · algorithm 中文  ·
    Share on: twitter facebook linkedin copy

    学习内容 学习文档: 哈希表理论基础 收获总结 Go中的rune类型: 在Go语言中,rune是一种别名类型,它表示一个Unicode码点,即一个整数,通常用于表示字符。Go的字符串是以字节数组的形式存储的,因此在处理多字节字符(如汉字、表情符号等)时,直接使用索引访问可能会得到不完整的字符。rune类型解决了这个问题,它能够正确处理和表示多字节的Unicode字符。这对于处理包含非ASCII字符的字符串时非常重要,尤其在国际化或多语言支持的应用中。通过这次学习,我们掌握了如何使用rune遍历字符串,确保对每个字符进行准确的操作。 数组作为简单高效的哈希表: 在解决某些特定范围的哈希问题时,数组可以作为一种极为简单和高效的哈希表实现 …


    Read More
  • 【算法刷题系列】第4天 24. 两两交换链表中的节点, 19. 删除链表的倒数第 N 个结点, 面试题 02.07. 链表相交, 142. 环形链表 II

    calendar Aug 18, 2024 · 5 min read · algorithm 中文  ·
    Share on: twitter facebook linkedin copy

    收获总结 虚拟头节点的使用:虚拟头节点(Dummy Head)是处理链表问题的一大利器,尤其在增删节点操作中。通过引入虚拟头节点,可以避免处理链表头部时遇到的特殊情况,如删除第一个节点或在第一个节点前插入新节点。这不仅简化了代码,还减少了需要额外考虑的边界条件。例如,在处理 19. 删除链表的倒数第 N 个结点 时,虚拟头节点能够让双指针操作统一化,避免对头节点的单独处理。 双指针技术:双指针技术是链表问题中的核心工具,特别是在处理链表长度不一致、链表中查找特定节点、或检测链表是否存在环时。双指针通常有两种应用方式: 快慢指针:通过让一个指针每次走两步(快指针),另一个指针每次走一步(慢指针),这种方法能有效检测链表中的环( …


    Read More
  • 【算法刷题系列】第3天 203.移除链表元素, 707.设计链表, 206.反转链表

    calendar Aug 16, 2024 · 4 min read · algorithm 中文  ·
    Share on: twitter facebook linkedin copy

    学习内容 学习文档: 链表讲解 收获总结 链表概述 链表是一种基础的数据结构,由一系列节点组成,每个节点包含数据部分和指向下一个节点的指针(或引用)。链表的最后一个节点指向 null,表示链表的末尾。链表动态扩展性强,适合频繁插入和删除操作。 链表的定义 链表有多种类型,最常见的是单链表和双链表。 单链表:每个节点包含数据和指向下一个节点的指针 next。链表的头节点指向第一个节点,最后一个节点的 next 指向 null。 Golang 单链表定义: 1type ListNode struct { 2 Val int 3 Next *ListNode 4} 双链表:每个节点包含数据、指向下一个节点的指针 next 和指向前一个节点 …


    Read More
  • 【算法刷题系列】第2天 209. 长度最小的子数组, 59. 螺旋矩阵 II

    calendar Aug 15, 2024 · 2 min read · algorithm 中文  ·
    Share on: twitter facebook linkedin copy

    学习内容 学习文档: 长度最小子数组讲解 螺旋矩阵II讲解 收获总结 滑动窗口: 在某些情况下,滑动窗口可以看作是一种特殊的双指针技术,其中两个指针 i 和 j(即左指针和右指针)从同一端开始,但移动的条件有所不同。滑动窗口的核心思想是通过右指针 j 不断向右扩展窗口,同时左指针 i 尽量向右收缩窗口,以找到满足特定条件的最小或最大窗口。 举例来说,假设你想找到数组 arr 中两个元素之间的差值等于 diff 的一对元素索引,这可以视为滑动窗口问题,右指针 j 用来扩展窗口,左指针 i 用来收缩窗口,直到找到满足条件的子数组。初始化时可以根据具体问题选择 i, j 都从 0, 0 开始,也可以 0, 1 这种情况。 题目解析 题 …


    Read More
  • 【算法刷题系列】第1天 704. 二分查找,27. 移除元素, 977.有序数组的平方

    calendar Aug 14, 2024 · 4 min read · algorithm 中文  ·
    Share on: twitter facebook linkedin copy

    学习内容 学习文档:数组理论基础 收获总结 快速排序: 快速排序是一种基于分治法的排序算法。首先,选择一个基准元素,然后通过分区操作将数组划分为两部分,一部分元素小于基准值,另一部分元素大于基准值。递归地对这两部分进行排序,最终将数组排序完成。 1package main 2 3import "fmt" 4 5func quickSort(arr []int, low, high int) { 6 if low < high { 7 pi := partition(arr, low, high) 8 quickSort(arr, low, pi-1) 9 quickSort(arr, pi+1, high) …


    Read More
    • ««
    • «
    • 1
    • 2
    • 3
    • 4
    • »
    • »»

Featured Posts

  • Kubernetes 存储管理
  • Golang 核心知识点详解文档
  • Kubernetes 中 GPU 虚拟化与 NVIDIA GPU Operator 管理概述
  • Kubernetes 中 Cilium 网络架构详解与流量处理流程
  • 两个有序集合的合并
  • Go map 底层实现与冲突处理
  • Go Channel 是线程安全的吗?
  • Go内存逃逸与内存泄露详解

Recent Posts

Categories

ALGORITHM 15 KUBERNETES 12 GOLANG 7 SHORTHAND 4 LINUX 3 PYTHON 2 ALGOIITHM 1 ANSIBLE 1 APIGATEWAY 1 CONTAINERD 1 DOCKER 1 ETCD 1 GIT 1 JAVA 1
All Categories
ALGOIITHM1 ALGORITHM15 ANSIBLE1 APIGATEWAY1 CONTAINERD1 DOCKER1 ETCD1 GIT1 GOLANG7 JAVA1 KUBERNETES12 LINUX3 PROMETHEUS1 PYTHON2 SHORTHAND4 VIM1
[A~Z][0~9]

Tags

中文 33 ALGORITHM 16 KUBERNETES 13 ENGLISH 12 GOLANG 7 SHORTHAND 4 LINUX 3 ETCD 2 PYTHON 2 ABOUT 1 ANSIBLE 1 APIGATEWAY 1 APISERVER 1 BAILIYINGQI 1
All Tags
ABOUT1 ALGORITHM16 ANSIBLE1 APIGATEWAY1 APISERVER1 BAILIYINGQI1 CONTAINERD1 CONTROLLER-MANAGER1 ENGLISH12 ETCD2 GIT1 GOLANG7 JAVA1 KUBERNETES13 LINUX3 PROMETHEUS1 PYTHON2 SCHEDULER1 SHORTHAND4 VIM1 中文33
[A~Z][0~9]

Copyright  . All Rights Reserved

to-top