了解 k8s 的同学都知道,kube-apiserver 对外提供 RESTful API 接口提供 查询,监听集群(资源)状态的服务,kube-apiserver 主要就做一件事,就是如何将 RESTful API (CREATE, DELETE, UPDATE, GET .etc)接口...
Interface offers a common interface for object marshaling/unmarshaling operations and hides all the storage-related operations behind it(原文注释)
本文接着 Jetty : Embedded Server 启动流程 - 1往下讲,上回说到 Server.start 调用 Connector.start 方法,开始接收和处理请求,Server 默认使用 Connector 的子类 SelectChannelConnector,所以我们重点来看看...
前言 文章字数一多,在线编辑不方便,本文是 k8s:kube-apiserver 启动流程的第2部分传送门:k8s :kube-apiserver 启动流程 - 1 回顾 上回讲到 Run 方法: {代码...} 目前系统中有以下 api server: CustomResour...
看 k8s 源代码有一段时间,总感觉在迷宫里乱窜,有时候觉得终于找到出口了,一下子又撞墙了,总结下来还是自己的内功不够深厚,本文是对 kube-apiserver Legacy(遗留,即将废弃)API 初始化流程(以及数据结构)...
本文基于 Jetty 8.1.x 版本简单介绍 Jetty Embedded Server 核心概念,线程模型,启动流程。以下代码片段摘自 Jetty 源代码 中的 example-jetty-embedded 模块的 OneServletContext.java
make 在源代码根目录 Makefile 文件中定位到 quick-release 目标,该目标的动作是执行 build/release.sh 脚本
前言 k8s 集群部署是个老生常谈的问题,网上资料一大把,各路大神祭出了各种方案: 使用 linux 发行版提供的包管理器(比如 centos yum) 使用 第三方工具包(脚本) 使用 第三方二次开发包 本文介绍在 浏览 k8s 源...
最近在调研 Google kubernetes 开源的容器编排平台,刚好也在学习 Go 语言,所以想看看 Google 这样的大厂是怎么撸 Go 语言的,本文简单介绍如何下载 k8s 源代码,导入 Idea GoLand(对,我是搞 Java的~),对于...
如果直接构建的话会发现会卡在那动不了,原因是构建脚本会从 gcr(google container registry)拉取构建需要的基础镜像,而且是强制拉取...,如果没有 VPN 的话就悲剧了。有两种方法:
通过使用 Cache 注解来标注哪些数据库访问(select)需要缓存,prefix 属性设置 Redis key 前缀,这样做的好处是将缓存的实现和业务逻辑分开,可扩展性强
前言 虽然 Gradle 势头很猛,但是 Maven 依然是 Java 项目构建的优先选择,本文简要介绍一些 Maven 工程实践 多模块(multiple module) 如果工程比较复杂,或者预期后续会变的比较复杂,可以将工程分成多个模块...
要访问(Redis)服务,首先需要与服务建立连接,因此客户端库首先需要对连接进行抽象和封装,Jedis 使用 Connection 类来封装与服务器的一个 socket 连接:
initialize 方法用于初始化策略,isTriggeringEvent 方法用于判断是否需要回滚,TriggeringPolicy 接口的不同实现类对应不同的策略
前言 log4j2 使用插件机制加载各种组件:appender, logger .etc,本文简要分析 log4j2 插件机制实现 Plugin Annotation(注解) Plugin 注解提供了一种便捷的方法将一个类声明成 log4j2 的插件,比如 {代码...} n...
网上各路大神总结过各种关于 hotspot jvm synchronized 内部实现,看别人的文章总觉得不过瘾,所以有了这篇文章,尝试再扒一次 synchronized 的“底裤”
Given a string of numbers and operators, return all possible results from computing all the different possible ways to group numbers and operators. The valid operators are +, - and *
Object wait/notify 方法是早期 JVM 提供的一种基于 Object Monitor 的线程同步方法,本文先介绍相关的数据结构(类),然后从 wait/notify 方法的内部实现入手,简单分析 Object Monitor 相关的原理和实现
前言 本文从 Java Thread 类的 start 方法的内部实现入手,分析 Hotspot JVM 多线程相关的数据结构(类)和原理 Thread 类 start 方法 Thread 类的 start 方法用于启动线程,方法内部调用了 native 方法 start0 {...
Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree
博学,审问,慎思,明辨,力行