k8s garbage collector分析(1)-启动分析 garbage collector介绍 Kubernetes garbage collector即垃圾收集器,存在于kube-controller-manger中,它负责回收kubernetes中的资源对象,监听资源对象事件,更新对象之间的依赖关系,并根据对象的删除策略来决定是否删除其关联对象. 关于删除关联对象,细一点说就是,使用级联删除策略去删除一个owner时,会连带这个owner对象的dependent对象也一起删除掉. 关…
garbage collector介绍 Kubernetes garbage collector即垃圾收集器,存在于kube-controller-manger中,它负责回收kubernetes中的资源对象,监听资源对象事件,更新对象之间的依赖关系,并根据对象的删除策略来决定是否删除其关联对象. 关于删除关联对象,细一点说就是,使用级联删除策略去删除一个owner时,会连带这个owner对象的dependent对象也一起删除掉. 关于对象的关联依赖关系,garbage collector会监听资…
replicaset controller分析 replicaset controller简介 replicaset controller是kube-controller-manager组件中众多控制器中的一个,是 replicaset 资源对象的控制器,其通过对replicaset.pod 2种资源的监听,当这2种资源发生变化时会触发 replicaset controller 对相应的replicaset对象进行调谐操作,从而完成replicaset期望副本数的调谐,当实际pod的数量未达到…
前言: 最近看了google的工程师写的一个非常简单的垃圾收集器,大概200多行C代码,感叹大牛总能够把复杂的东西通过很简单的语言和代码表达出来.为了增加自己的理解,决定把大牛的想法和代码分析一遍,与大家分享,顺便结合wikipedia,复习下GC的基本概念. 相信大家在写程序的过程中都遇到内存管理的问题,诸如malloc/delete.new/free等,C/C++需要程序员主动进行内存的释放,即垃圾内存的回收,而像Java就提供了GC机制来自动进行垃圾回收. 一.垃圾与垃圾回收 为什么需要进…
一个简单的Garbage Collector的实现 前言: 最近看了google的工程师写的一个非常简单的垃圾收集器,大概200多行C代码,感叹大牛总能够把复杂的东西通过很简单的语言和代码表达出来.为了增加自己的理解,决定把大牛的想法和代码分析一遍,与大家分享,顺便结合wikipedia,复习下GC的基本概念. 相信大家在写程序的过程中都遇到内存管理的问题,诸如malloc/delete.new/free等,C/C++需要程序员主动进行内存的释放,即垃圾内存的回收,而像Java就提供了GC机制来…
B - Garbage Collector https://agc027.contest.atcoder.jp/tasks/agc027_b 题意: x坐标轴上n个垃圾,有一个机器人在从原点,要清扫垃圾.原点有一个垃圾桶.机器人可以在x轴上左右移动,当移动到某个垃圾的位置上时,可以选择花费 X 点能量将它捡起来(也可以视而不捡).机器人如果到达垃圾桶,则可以将它携带的垃圾花费 X 点能量倒出.机器人如果携带着 K 件垃圾移动一个单位距离,则需要消耗 (K+1)^2 点能量.问将所有垃圾全部弄到垃…
原文链接:Getting Started with the G1 Garbage Collector 概述 目的 这篇教程包含了G1垃圾收集器使用和它如何与HotSpot JVM配合使用的基本知识.你将会学到G1收集器内部是如何运作的,切换到使用G1的命令和记录其操作的日志选项. 完成时间 大概一个小时(我操,一个小时我勉强可以看完,要是这样边翻译边看还是需要点时间的呀) 简介 这个OBE(我不知道OBE是什么意思)包含了Java中Java虚拟机(JVM)G1垃圾收集(GC)的基本知识.在这个O…
三色算法,高效率垃圾回收,jvm调优 Garbage collector:垃圾回收器 What garbage? 没有任何引用指向它的对象 JVM GC回收算法: 引用计数法(ReferenceCounting) 给对象中添加一个引用计数器,每当有一个地方引用他时,计数器值就+1,:当引用失效时,计数器值就-1:任何时刻计数器为0的对象就是不可能在被使 优点:判定效率高 缺点:不会完全准确,因为如果出现两个对象相互引用的问题就不行了 很明显,到最后两个实例都不再用了(都等于null了),但是GC…
k8s endpoints controller分析 endpoints controller简介 endpoints controller是kube-controller-manager组件中众多控制器中的一个,是 endpoints 资源对象的控制器,其通过对service.pod 2种资源的监听,当这2种资源发生变化时会触发 endpoints controller 对相应的endpoints资源进行调谐操作,从而完成endpoints对象的新建.更新.删除等操作. endpoints c…
本文原始地址:https://farmer-hutao.github.io/k8s-source-code-analysis/ 项目github地址:https://github.com/farmer-hutao/k8s-source-code-analysis 源码准备 环境准备 源码下载 源码编译 IDE 1. 环境准备 操作系统:我们使用Linux作为k8s源码分析和调试环境,fedora.centos.ubuntu都行,我这里使用fedora: golang相关: GOROOT=/usr…