课程介绍
课程介绍:
本课程是一门专为 进阶开发者、架构师 设计的系统化技术修炼营,覆盖 Linux内核、网络、内存管理、进程调度 等底层知识,并带你 从0到1手写高性能分布式IM系统,提升你的 底层原理认知与架构设计能力。
课程亮点:
深入操作系统底层:掌握 三次握手、epoll多路复用、网络收发包机制、NUMA内存管理、进程调度 等核心原理。
系统硬件优化:解析 CPU微架构、内存硬件、ECC校验、NUMA优化,帮助你构建高性能计算基础。
分布式高并发架构:从 IM系统架构设计、DAG业务编排、消息存储、全球数据中心同步 到 分布式ID生成、会话管理,手写高性能IM系统。
真实企业级实践:结合 Redis、Nginx、Netty、Golang 高性能应用优化,全面提升实战能力。
课程目录
(1)\开发内功修炼营
(2)\手写分布式IM系统
(3)\开发内功修炼营\01.网络管理;目录中文件数:23个
01:三次握手内部实现原理.mp4
02:常见三次握手异常.mp4
03:同步阻塞的内核实现原理.mp4
04:epoll多路复用的内部实现.mp4
05:epoll应用案例之高性能redis.mp4
06:epoll应用案例之高性能nginx.mp4
07:resueport及其在nginx中的应用(含实验).mp4
08:epoll应用案例之高性能Golang.mp4
09:内核是如何接收网络包的(1).mp4
09:内核是如何接收网络包的(2).mp4
10:内核是如何发送网络包的(1).mp4
10:内核是如何发送网络包的(2).mp4
11:本机网络IO工作原理.mp4
12:比127.0.0.1更快的UDS通信(含实验).mp4
13: 网络收发包过程中的路由原理.mp4
14:网络收发包应用之抓包(含实验).mp4
15:网络收发包应用之iptables.mp4
16:网络连接的内存开销.mp4
17:Linux打开文件数限制原理.mp4
18:连接数突破端口号65535方法.mp4
19:(实验)单机百万TCP连接.mp4
20:加餐之epoll应用案例Java Netty包(1).mp4
20:加餐之epoll应用案例Java Netty包(2).mp4
(4)\开发内功修炼营\02.硬件原理;目录中文件数:12个
01:CPU物理硬件生产过程.mp4
02:个人PC CPU内部原理介绍(1).mp4
02:个人PC CPU内部原理介绍(2).mp4
04:CPU核的微架构.mp4
05:个人CPU和服务器CPU的区别.mp4
06:CPU对内存的硬件支持(1).mp4
06:CPU对内存的硬件支持(2).mp4
07:服务器ECC内存工作原理.mp4
08:内存硬件内部结构.mp4
09:内存IO过程.mp4
10:内存存储性能测试(1).mp4
10:内存存储性能测试(2).mp4
(5)\开发内功修炼营\03.内存管理部分视频课;目录中文件数:14个
01:内核的物理内存安装检测.mp4
02:内核的初期memblock内存分配器.mp4
03:内核之内存NUMA信息感知.mp4
04:内核伙伴系统物理内存管理.mp4
05:内核的SLAB内存分配器.mp4
06:用户进程虚拟内存机制.mp4
07:内存管理系统调用原理(1).mp4
07:内存管理系统调用原理(2).mp4
08:进程栈内存的工作原理.mp4
09:线程栈内存的工作原理.mp4
10: 堆内存管理原理介绍(1).mp4
10: 堆内存管理原理介绍(2).mp4
11:跨进程共享内存工作原理(1).mp4
11:跨进程共享内存工作原理(2).mp4
(6)\开发内功修炼营\04.进程管理;目录中文件数:19个
01:进程的实现原理介绍.mp4
02:fork创建进程过程 (1).mp4
02:fork创建进程过程(2).mp4
03:进程pid管理.mp4
04:线程的创建过程.mp4
05:进程与线程的对比.mp4
06 :(实验)ELF可执行文件基本格式.mp4
07:进程加载启动原理.mp4
08:Linux调度器发展史.mp4
09:Linux调度器的定义.mp4
10:进程调度器初始化和核选择.mp4
11:完全公平调度器是如何工作的(1).mp4
11:完全公平调度器是如何工作的(2).mp4
12:调度器干预命令介绍.mp4
13:深度解析Linux负载指标.mp4
14:CPU利用率统计原理(1).mp4
14:CPU利用率统计原理(2) 含实验.mp4
15:上下文切换开销(实验).mp4
16:任务迁移对应用性能的影响.mp4
(7)\手写分布式IM系统\Plato第二部分-业务架构实现
03 IM业务编排DAG架构.mp4
(8)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)
(9)\手写分布式IM系统\Plato第二部分-业务架构实现\01.核心领域实现
04 用户领域服务设计与实现.mp4
05 用户域设计与实现-LAB3B要求.mp4
06 用户域设计与实现-LAB3B-源码阅读.mp4
(10)\手写分布式IM系统\Plato第二部分-业务架构实现\02.消息领域服务设计
07 消息系统设计-需求分析.mp4
08 消息系统设计-设计目标.mp4
09 消息系统设计-存储结构.mp4
10 消息系统设计-存储服务.mp4
11 消息系统设计-分发架构.mp4
12 消息系统设计-消息全球数据中心同步.mp4
13 消息系统设计-实现细节.mp4
(11)\手写分布式IM系统\Plato第二部分-业务架构实现\03.会话领域服务设计
15 会话领域需求分析.mp4
16 分布式ID生成算法.mp4
17 大规模架构优化.mp4
18 高可用性.mp4
19 任务分解.mp4
20 如何面试?.mp4
(12)\手写分布式IM系统\Plato第二部分-业务架构实现\04.IMCloud 即时通信中台化
21 需求分析.mp4
22 基本架构01.mp4
23 基本架构02.mp4
24 大规模分布式系统的可观测性.mp4
25 稳定性度量方法.mp4
26 多租户架构设计&面试亮点总结.mp4
(13)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\01.消息协议设计
01.基本·协议设计.mp4
02 消息可用性(一)-基本概念.mp4
03 消息可用性(二)-背景介绍.mp4
04 消息可用性(三)-方案选型.mp4
05.消息可用性(四)-上行消息.mp4
06.消息可用性(五)-消息转发.mp4
07 消息可用性(六)-下行消息.mp4
(14)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\02.长连接网关设计(一)-基本实现
08 背景介绍.mp4
09 基本分析.mp4
10 设计目标.mp4
11 ip选择.mp4
12 并发模型.mp4
13 内存布局.mp4
(15)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\03.长连接网关设计(二)-连接可用性
14 长连接网关设计(二)-连接可用性-消息路由.mp4
15 长连接网关设计(二)-连接可用性-断线重连.mp4
16 长连接网关设计(二)-连接可用性-服务重启1.mp4
17 长连接网关设计(二)-连接可用性-服务重启2.mp4
18 长连接网关设计(二)-连接可用性-限流.mp4
(16)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\04.长连接网关设计(三)-通用性&多IDC&方案总结
19 消息中台.mp4
20 通用设计1.mp4
21 通用设计2.mp4
22 多IDC方案.mp4
23 方案总结.mp4
24 下行消息.mp4
25 平滑迁移.mp4
(17)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\05.领域驱动设计(一)-设计方法
26 什么是DDD.mp4
27 名词解释.mp4
28 名词术语.mp4
29 DDD应用流程.mp4
30 登月的原始需求.mp4
31 阿波罗1.mp4
32 阿波罗2.mp4
33 hardcore system design.mp4
(18)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\06.领域驱动设计(二)-IM系统的微服务划分
34 背景分析.mp4
35 设计目标.mp4
36 解决方案1.mp4
37 解决方案2.mp4
38 添加约束.mp4
39 微服务划分.mp4
(19)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\07.分布式缓存设计(一)-低延迟&高吞吐优化策略
40 分布式缓存介绍.mp4
41 评估标准.mp4
42 基本方案.mp4
43 延迟优化1.mp4
44 延迟优化2.mp4
45 延迟优化3.mp4
46 高吞吐优化.mp4
(20)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\08.分布式缓存设计(二)-高可用&一致性优化策略
47 缓存高可用1.mp4
48 缓存高可用2.mp4
49 缓存高可用3.mp4
50 缓存一致性1.mp4
51 缓存一致性2.mp4
52 运维.mp4
(21)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\09.分布式存储(一)-IM的存储模型设计
53 背景介绍.mp4
54 实现方案.mp4
55 历史存储.mp4
56 复杂性治理.mp4
(22)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\10.分布式存储(二)-万人群聊优化
57 万人群聊1.mp4
58 万人群聊2.mp4
(23)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\11.LAB0-独立完成IM系统架构设计
59 架构总结.mp4
(24)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\12.LAB1-实现IM命令行客户端
61 客户端框架的设计.mp4
62 客户端实现源码导读.mp4
(25)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\13实现 IP Config – 长连接调度引擎&LAB2A
63 设计目标.mp4
64 架构设计.mp4
65 LAB2A_实现ipconf server.mp4
66 源码参考阅读.mp4
(26)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\14.实现 IM Gateway-持有socket长连&LAB2B
67 背景介绍.mp4
68 socket状态机.mp4
70 gateway 源码参考阅读.mp4
(27)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\15.实现 IM Gateway-控制长连接收发消息&LAB2C
71 设计方案.mp4
73 源码分析.mp4
(28)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\16.实现 State Server(一) -生命周期&LAB2D
74 长连接生命周期管理.mp4
76 源码阅读1.mp4
77 源码阅读2.mp4
(29)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\17.实现 state server(二)-实现消息状态机
78 消息可靠性设计.mp4
80 连接可靠性源码阅读.mp4
(30)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\18.实现State Server(三)-分布式化(高可用可伸缩)
81 介绍.mp4
82 消息状态机的分布式化.mp4
83 实现存算分离&单元化部署.mp4
(31)\手写分布式IM系统\手写分布式IM系统-Plato(第一部分)\19.LAB2:实现完整长连接网关层
85 源码导读.mp4
评论0