一、前言
红黑树,是一种高效的自平衡二叉查找树
Rudolf Bayer 于1978年发明红黑树,在当时被称为对称二叉 B 树(symmetric binary B-trees)
。后来,在1978年被 Leo J. Guibas 和 Robert Sedgewick 修改为如今的红黑树
。
红黑树具有良好的效率,它可在近似O(logN)
时间复杂度下完成插入、删除、查找等操作,因此红黑树在业界也被广泛应用,比如 Java 中的 TreeMap,JDK 1.8 中的 HashMap、C++ STL 中的 map 均是基于红黑树结构实现的。
死记硬背,很难学会
红黑树的结构和设计都非常优秀,也同样在实现上有着复杂的处理逻辑,包括插入或者删除节点时;颜色变化、旋转操作等操作。但如果只把这些知识点硬背下来,什么时候染色、什么时候旋转,是没有多大意义的,用不了多久也就忘记了。所以这部分的学习,了解其根本更重要。
K8S:深入浅出Kubernetes(理论+实战)
Kubernetes(k8s)是一个全新的基于容器技术的分布式架构领先方案。Kubernetes(k8s)是Google开源的容器集群管理系统(谷歌内部:Borg)。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。
而且它也是一个完备的分布式系统支撑平台,具有完备的集群管理能力,多扩多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和发现机制、內建智能负载均衡器、强大的故障发现和自我修复能力、服务滚动升级和在线扩容能力、可扩展的资源自动调度机制以及多粒度的资源配额管理能力。同时Kubernetes提供完善的管理工具,涵盖了包括开发、部署测试、运维监控在内的各个环节。
这份K8S学习指南也分为理论篇和实战篇,可以说双管齐下,不得不爱! 还有权威指南-第一本Docker书及其手绘思维脑图(下面会介绍) K8S+Docker指南,感兴趣可以找小编给你分享~
深入浅出Kubernetes:理论篇
1.1 这么理解集群控制器,能行!
-
1. 大图
-
2. 控制器原理
-
3. 简易的冰箱
-
4. 统一入口
-
5. 控制器
-
6. 控制器管理器
-
7. Shared Informer
-
8. List Watcher
-
9. 举例
-
10. 服务控制器
-
11. 路由控制器
-
12. 结束语
1.2 集群网络详解
-
1. 鸟瞰
-
2. 集群网络搭建
-
3. 通信
1.3 集群伸缩原理
-
1. 节点增加原理
-
2. 手动添加已有节点
-
3. 自动添加已有节点
-
4. !/bin/bash
-
5. 集群扩容
-
6. 自动伸缩
-
7. !/bin/sh
-
8. 节点减少原理
1.4 认证与调度
-
1. “关在笼子里”的程序
-
2. 得其门而入
-
3. 择优而居
-
4. 结束语
1.5 集群服务的三个要点和一种实现
-
1. K8S 集群服务的本质是什么
-
2. 把服务照进现实
-
3. 一种实现
1.6 镜像拉取这件小事
-
1. 镜像拉取这件小事
-
2. 理解 OA u t h 2.0 协议
-
3. Docker 扮演的角色
-
4. K8s 实现的私有镜像自动拉取
-
5. 阿里云实现的 A c r credential helper
深入浅出Kubernetes:实战篇
2.1 读懂这一篇,集群节点不下线
-
1. 问题一直在发生
-
2. 需要知道的 Kubernetes 知识
-
3. 容器 runtime
-
4. 什么是 Dbus
-
5. Systemd 是硬骨头
-
6. 问题修复
2.2 节点下线姊妹篇
-
1. 问题现象
-
2. 大逻辑
-
3. 就绪三分钟
-
4. 止步不前的 PLEG
-
5. 无响应的 Terwayd
-
6. 修复
2.3 我们为什么会删除不了集群的命名空间?
-
1. 背景
-
2. 从集群入口开始
-
3. Controller 在做什么?
-
4. 再次回到集群入口
-
5. 节点与 Pod 之间的通信
-
6. Route Controller 为什么不工作?
-
7. 集群节点访问云资源
-
8. 问题大图
2.4 阿里云 ACK 产品安全组配置管理
-
1. 安全组在 ACK 产品中扮演的角色
-
2. 安全组与 ACK 集群网络
-
3. 怎么样管理 ACK 集群的安全组规则
-
4. 限制集群访问外网
-
5. IDC 与集群互访
-
6. 使用新的安全组管理节点
-
7. 典型问题与解决方案
-
8. 使用多个安全组管理集群节点
-
9. 限制集群访问公网或者运营级 NAT 保留地址
-
10. 容器组跨节点通信异常
2.5 二分之一活的微服务
-
1. 二分之一活的微服务
-
2. 绕不过去的大图
-
3. 代理与代理的生命周期管理
-
4. 就绪检查的实现
-
5. 控制面和数据面
-
6. 简单的原因
-
7. 结论
2.6 半夜两点 Ca 证书过期问题处理惨况总结
-
1. 不断重启的 Citadel
-
2. 一般意义上的证书验证
-
3. 大神定理
-
4. Citadel 证书体系
-
5. 犯的错
-
6. 后记
Docker:权威指南-第一本Docker书+Docker思维脑图
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
来看Docker思维脑图:介绍-架构-安装-组成-命令-镜像-容器
可提供原件xmind
总结
蚂蚁面试比较重视基础,所以Java那些基本功一定要扎实。蚂蚁的工作环境还是挺赞的,因为我面的是稳定性保障部门,还有许多单独的小组,什么三年1班,很有青春的感觉。面试官基本水平都比较高,基本都P7以上,除了基础还问了不少架构设计方面的问题,收获还是挺大的。
经历这次面试我还通过一些渠道发现了需要大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。
班,很有青春的感觉。面试官基本水平都比较高,基本都P7以上,除了基础还问了不少架构设计方面的问题,收获还是挺大的。
经历这次面试我还通过一些渠道发现了需要大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。