Debian 爱好者社区 为您找到相关结果 653

Golang 中的 channel 通道详解

channel通道golang的并发模型是序列通信处CSP(communicating sequential process)——使用通信来共享内存 ,避免goroutine因竞争共享内存频繁加锁产生的性能问题。基本数据结构golang中提供了一个特殊的类型channel实现goroutine之间的通信。channel类似于队列,先进先出。channel数据结构源码在src/runtime/chan.go下。chan 使用 hchan 表示,它的传参与赋值始终都是指针形式,每个 hchan 对象代表着一个 chan。hchan 中包含一个缓冲区 buf,它表示已经发送但是还未被接收的数据缓存。buf 的大小由创建 chan 时的参数来决定。qcount 表示当前缓冲区中有效数据的总量...阅读全文

Debian 9 使用kubeadm创建 k8s 集群(下)

; 我们告诉kubeadm使用相同的子网。第二个任务在/home/sammy创建一个.kube目录。 此目录将保存配置信息,例如连接到群集所需的管密钥文件以及群集的API地址。第三个任务将从kubeadm init生成的/etc/kubernetes/admin.conf文件复制到非root用户的主目录。 这将允许您使用kubectl访问新创建的集群。最后一个任务运行kubectl apply安装Flannel 。 kubectl apply -f descriptor.[yml|json]是告诉kubectl创建描述descriptor.[yml|json]文件中descriptor.[yml|json]的对象的语法。 kube-flannel.yml文件包含在集群中设置Flannel所需的...阅读全文

博文 2019-05-13 22:57:41 debian.cn

kubelet 中垃圾回收机制的设计与实现

k.StartGarbageCollection 启动了 GarbageCollect。k8s.io/kubernetes/cmd/kubelet/app/server.go:1089func createAndInitKubelet(......) { k, err = kubelet.NewMainKubelet( ...... ) if err != nil { return nil, err } k.BirthCry() k.StartGarbageCollection() return k, nil }k.StartGarbageCollection在 kubelet 中镜像的生命周期和容器的生命周期是通过 imageManager 和 containerGC 管的。在 StartGarbageCollection 方法中会...阅读全文

博文 2021-02-05 17:48:22 知乎