
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
kubectl的Visitor模式解析 本文通过配置同步工具开发中的实际问题,引出了Visitor设计模式的应用场景。该模式的核心思想是将数据结构与操作逻辑解耦,使新增操作无需修改原有代码。 在kubectl源码中,Visitor模式被巧妙用于处理多种数据源(文件/HTTP/Git等): 统一接口:定义Visitor接口和Info数据结构,屏蔽底层差异 多态实现:FileVisitor处理文件,U

本文深入解析Spring框架的核心IoC容器实现原理。首先分析IoC的核心概念,指出IoC通过反转对象创建权实现解耦,并对比传统开发模式与IoC方式的差异。接着详细设计一个简易IoC容器,包括Bean工厂接口定义、BeanDefinition模型设计及其关键属性(类类型、作用域、工厂方法等)。文章重点阐述了如何通过BeanDefinitionRegistry实现Bean注册机制,并提供了Gener

本文通过手写实现Spring依赖注入功能,深入解析了IoC容器的核心原理。主要内容包括:1)依赖注入的本质是构造器参数赋值和属性赋值;2)构造器注入实现,通过BeanReference区分直接值和Bean依赖;3)属性注入实现,设计PropertyValue处理字段赋值;4)循环依赖问题的检测与解决机制。文章采用Java反射技术,从BeanDefinition设计到具体注入实现,完整呈现了Spri

Kubernetes入门指南:核心概念与实战经验 本文分享了作者从Kubernetes新手到掌握核心概念的完整学习路径。Kubernetes作为容器编排系统,源自Google内部Borg项目,用于管理Docker容器集群。文章重点解析了7个核心概念:Pod是最小部署单元,Service提供稳定访问入口,Deployment管理应用生命周期,StatefulSet适合有状态应用,DaemonSet确

本文分享了阅读Kubernetes源码的完整指南。首先介绍了开发环境准备,推荐使用GoLand或VS Code+Go插件。详细讲解了两种源码下载方式:完整仓库下载(适合初学者)和单独组件下载(针对特定模块)。解析了仓库目录结构,强调应优先关注pkg/和cmd/目录。提供了四个高效阅读技巧:(1)带着功能看代码;(2)先看架构图;(3)换位思考设计原理;(4)善用调试和日志。特别提醒注意版本兼容性问

摘要:Kubernetes Pod创建全流程解析 本文通过部署nginx Pod的实践案例,深入剖析Kubernetes的核心工作机制。主要内容包括: 完整创建流程:从kubectl提交YAML到Pod运行,详细拆解了API Server、etcd、Scheduler、kubelet等组件的协作过程 关键状态解读:解析Pod的常见状态(Pending/Running/CrashLoopBackOf

文章摘要 本文详细剖析了Kubernetes MutatingAdmissionWebhook的核心实现逻辑,聚焦serveMutate和mutatePod两个关键函数。作者通过一个线上事故案例(因annotation键名变更导致sidecar注入失败)引出问题,深入解析了webhook请求处理流程:包括HTTP基础校验、准入控制请求反序列化、注入条件判断(重点指出mutationRequired

摘要 本文深入分析了Kubernetes APIServer处理Pod创建请求时的完整数据流路径,从一个生产环境中因空status导致的Pod卡死问题切入。通过源码追踪,揭示了kube-apiserver从接收HTTP请求到最终写入etcd的完整流程,重点剖析了PrepareForCreate阶段的执行时机、QoS计算逻辑,以及准入控制webhook与策略执行的先后顺序问题。 核心发现包括: 准入

摘要:K8s APIServer 限流机制剖析 本文深入分析了 Kubernetes APIServer 的四种限流方案,源于一起生产事故:某自定义 controller 的 bug 导致 event 请求暴增(8000 QPS),因未启用 APF 导致核心 list/watch 请求被饿死。文章通过源码解析了以下机制: MaxInFlightLimit:基于 chan 信号量的传统方案,区分读写

本文通过手写实现Spring依赖注入功能,深入解析了IoC容器的核心原理。主要内容包括:1)依赖注入的本质是构造器参数赋值和属性赋值;2)构造器注入实现,通过BeanReference区分直接值和Bean依赖;3)属性注入实现,设计PropertyValue处理字段赋值;4)循环依赖问题的检测与解决机制。文章采用Java反射技术,从BeanDefinition设计到具体注入实现,完整呈现了Spri








