课程概述
本课程由慕课网提供,旨在帮助开发者深入理解Go语言的底层原理,并通过实际操作重写Redis中间件。课程内容丰富,涵盖了Go语言的高级特性和Redis协议解析等多个方面。
课程亮点
- 全面解析Go语言底层原理
- 实战案例:重写Redis中间件
- 包含多个章节,从基础到高级逐步深入
- 提供详细的视频教程和课件下载
适用场景
本课程适合以下开发者学习:
- 有Go语言基础,希望提升实战能力的开发者
- 对Redis中间件开发感兴趣的工程师
- 希望了解Go语言在高并发场景下的应用
📂 资源目录
📁 {1}--课程
📁 {9}--第9章高并发下的内存模型与垃圾回收
9.9]--9-9实战:如何优化GC效率?.mp4 [85.2 MB]
9.6]--9-6GO的是如何分配堆内存的?.mp4 [118.9 MB]
9.7]--9-7什么样对象需要垃圾回收?.mp4 [66.7 MB]
9.8]--9-8如何减小GC对性能的影响?.mp4 [42.8 MB]
9.5]--9-5GO的堆内存结构是怎样的?(3.mp4 [101.6 MB]
9.4]--9-4GO的堆内存结构是怎样的?(2.mp4 [134.3 MB]
9.3]--9-3GO的堆内存结构是怎样的?(1.mp4 [131.4 MB]
9.2]--9-2协程栈不够用了怎么办?.mp4 [76.6 MB]
9.1]--9-1为什么说Go的栈在堆上?.mp4 [55.1 MB]
9.10]--9-12本章小结.mp4 [35.7 MB]
9.1)--9-10本章作业.pdf [17.3 KB]
{9}--第9章高并发下的内存模型与垃圾回收资料.png [493.5 KB]
9.2)--9-11面试题.pdf [62.9 KB]
📁 {8}--第8章高并发应用:TCP网络编程
8.9]--8-9Go是如何抽象Socket的?(三.mp4 [62.4 MB]
8.7]--8-7Go是如何抽象Socket的?(一.mp4 [121.0 MB]
8.8]--8-8Go是如何抽象Socket的?(二.mp4 [68.0 MB]
8.6]--8-6NetworkPoller是如何工作的?(二.mp4 [95.3 MB]
8.5]--8-5NetworkPoller是如何工作的?(一.mp4 [87.7 MB]
8.3]--8-3Go是如何抽象Epoll的?(一.mp4 [99.2 MB]
8.4]--8-4Go是如何抽象Epoll的?(二.mp4 [65.4 MB]
8.2]--8-2什么是非阻塞IO?(二.mp4 [39.1 MB]
8.1]--8-1什么是非阻塞IO?(一.mp4 [36.8 MB]
8.11]--8-13本章小结.mp4 [22.1 MB]
8.10]--8-10实战:怎样结合阻塞模型和多路复用?.mp4 [58.3 MB]
8.2)--8-12面试题.pdf [53.1 KB]
8.1)--8-11本章作业.pdf [65.9 KB]
📁 {7}--第7章高并发下的通信方式:Channel管道
7.4]--7-4Channel接收数据的底层原理是什么?.mp4 [91.2 MB]
7.6]--7-8本章小结.mp4 [13.3 MB]
7.5]--7-5实战:非阻塞的Channel怎么做?.mp4 [51.8 MB]
7.3]--7-3Channel发送数据的底层原理是什么?.mp4 [106.2 MB]
7.2]--7-2如何设计高性能Channel?.mp4 [85.8 MB]
7.1]--7-1为什么要用Channel,共享内存不好用吗?.mp4 [72.2 MB]
{7}--第7章高并发下的通信方式:Channel管道资料.png [493.5 KB]
7.2)--7-7面试题.pdf [57.3 KB]
7.1)--7-6本章作业.pdf [52.8 KB]
📁 {6}--第6章Go高并发下的锁
6.9]--6-9如何通过Wai.mp4 [98.1 MB]
6.8]--6-8只让你看,不让你改,能实现吗?(三.mp4 [46.5 MB]
6.7]--6-7只让你看,不让你改,能实现吗?(二.mp4 [98.8 MB]
6.5]--6-5锁饥饿怎么办?.mp4 [142.8 MB]
6.6]--6-6只让你看,不让你改,能实现吗?(一.mp4 [77.0 MB]
6.4]--6-4互斥锁是如何工作的?.mp4 [160.0 MB]
6.3]--6-3互斥锁解决了什么问题?.mp4 [68.1 MB]
6.2]--6-2锁的基础是什么?(二.mp4 [72.5 MB]
6.1]--6-1锁的基础是什么?(一.mp4 [81.3 MB]
6.11]--6-11实战:如何排查锁异常问题.mp4 [74.0 MB]
6.10]--6-10段代码只能执行一次,怎么实现?.mp4 [61.7 MB]
{6}--第6章Go高并发下的锁文档.png [493.5 KB]
6.2)--6-13面试题.pdf [49.6 KB]
6.1)--6-12本章作业.pdf [52.8 KB]
📁 {5}--第5章高并发的核心工具:Goroutine协程
5.9]--5-11本章小结.mp4 [12.9 MB]
5.7]--5-7抢占式调度解决了什么问题?.mp4 [88.2 MB]
5.8]--5-8实战--协程太多有什么问题?.mp4 [49.3 MB]
5.5]--5-5为什么要有G-M-P调度模型?.mp4 [125.8 MB]
5.6]--5-6如何实现协程并发?.mp4 [107.8 MB]
5.3]--5-3协程是如何执行的?(一.mp4 [90.8 MB]
5.4]--5-4协程是如何执行的?(二.mp4 [17.0 MB]
5.2]--5-2协程的本质是什么?.mp4 [75.8 MB]
5.1]--5-1为什么要有协程,线程不好用吗?.mp4 [33.5 MB]
5.1)--5-9本章作业.pdf [154.1 KB]
5.2)--5-10面试题.pdf [45.7 KB]
📁 {4}--第4章Go在高并发下的数据结构
4.9]--4-9接口--隐式更好还是显式更好?(一.mp4 [82.0 MB]
4.7]--4-7怎么解决map的并发问题?(一.mp4 [101.4 MB]
4.8]--4-8怎么解决map的并发问题?(二.mp4 [58.1 MB]
4.6]--4-6map为什么需要扩容?.mp4 [78.6 MB]
4.5]--4-5map:重写Redis能用它吗?(二.mp4 [56.0 MB]
4.4]--4-4map:重写Redis能用它吗?(一.mp4 [129.8 MB]
4.2]--4-2数组,字符串,切片底层是一样的吗?(一.mp4 [109.7 MB]
4.3]--4-3数组,字符串,切片底层是一样的吗?(二.mp4 [93.8 MB]
4.1]--4-1什么变量的大小是0字节?.mp4 [94.2 MB]
4.14]--4-16本章小结.mp4 [16.6 MB]
4.13]--4-13实战:内存对齐是如何优化程序效率的?(二.mp4 [98.2 MB]
4.12]--4-12实战:内存对齐是如何优化程序效率的?(一.mp4 [57.2 MB]
4.11]--4-11nil,空接口,空结构体有什么区别?.mp4 [76.4 MB]
4.10]--4-10接口--隐式更好还是显式更好?(二.mp4 [56.0 MB]
4.2)--4-15面试题.pdf [46.9 KB]
4.1)--4-14本章作业.pdf [28.3 KB]
📁 {3}--第3章带你重新认识Go语言
3.5]--3-5Go语言是面向对象的吗?.mp4 [65.5 MB]
3.6]--3-6实战:企业级Go项目包管理方法.mp4 [92.2 MB]
3.4]--3-4Go程序是如何运行的?.mp4 [103.0 MB]
3.3]--3-3Go程序是如何编译的?.mp4 [98.3 MB]
3.2]--3-2何为Runtime?.mp4 [22.6 MB]
3.1]--3-1为什么要用Go语言?.mp4 [28.2 MB]
{3}--第3章带你重新认识Go语言必看.png [493.5 KB]
3.2)--3-8本章作业.pdf [36.5 KB]
3.1)--3-7面试题.pdf [41.7 KB]
📁 {1}--第1章课程导学与学习指南
1.1)--1-1课前必读(不读错过一个亿.pdf [1.4 MB]
1.1]--1-2Go课程概览.mp4 [55.5 MB]
{1}--第1章课程导学与学习指南文档.png [493.5 KB]
📁 {2}--第2章Go的开发环境搭建与快速入门
2.1]--2-1快速搭建Go学习环境.mp4 [80.3 MB]
2.3)--2-4GO语言快速入门练习.pdf [52.8 KB]
2.2)--2-3如何安装Go.pdf [136.4 KB]
2.1)--2-2GO语言超快速入门.pdf [142.1 KB]
📁 {16}--第16章回顾与总结
[16.1]--16-1一切才刚刚开始.mp4 [135.8 MB]
{16}--第16章回顾与总结说明.png [493.5 KB]
📁 {15}--第15章GO实现Redis集群
[15.9]--15-9实现defaultFunc.mp4 [78.2 MB]
[15.5]--15-5实现连接工厂.mp4 [89.9 MB]
[15.4]--15-4集群架构讲解.mp4 [77.0 MB]
[15.3]--15-3实现一致性哈希.mp4 [80.6 MB]
[15.2]--15-2定义NodeMap.mp4 [60.5 MB]
[15.11]--15-11完成ClusterDatabase.mp4 [107.4 MB]
15.8]--15-8实现三种执行模式.mp4 [83.3 MB]
15.7]--15-7操作连接池.mp4 [120.8 MB]
15.6]--15-6初始化ClusterDatabase.mp4 [93.2 MB]
15.10]--15-10实现特殊模式的指令.mp4 [128.5 MB]
15.1]--15-1详解一致性哈希.mp4 [28.5 MB]
{15}--第15章GO实现Redis集群文档.png [493.5 KB]
📁 {14}--第14章GO实现Redis持久化
[14.8]--14-8实现Aof恢复(二).mp4 [40.7 MB]
[14.7]--14-7实现Aof恢复(一).mp4 [81.3 MB]
[14.6]--14-6debug闭包问题.mp4 [61.5 MB]
[14.4]--14-4实现Aof落盘功能(一).mp4 [62.2 MB]
[14.3]--14-3实现HandleAof.mp4 [70.1 MB]
14.2]--14-2实现AddAof.mp4 [92.8 MB]
14.5]--14-5实现Aof落盘功能(二.mp4 [36.4 MB]
{14}--第14章GO实现Redis持久化资料.png [493.5 KB]
📁 {13}--第13章GO实现内存数据库
[13.9]--13-9实现KEYS命令集(二).mp4 [85.3 MB]
[13.5]--13-5实现DB.Exec.mp4 [71.3 MB]
[13.4]--13-4定义command结构体.mp4 [54.7 MB]
[13.3]--13-3实现SyncDict(二).mp4 [57.9 MB]
[13.2]--13-2实现SyncDict(一).mp4 [60.8 MB]
[13.13]--13-13实现核心Database(一).mp4 [95.6 MB]
[13.1]--13-1定义Dict接口(加片头).mp4 [50.4 MB]
[13.11]--13-11实现STRING命令集(一).mp4 [71.5 MB]
[13.10]--13-10实现KEYS命令集(三).mp4 [34.5 MB]
13.8]--13-8实现KEYS命令集(一.mp4 [75.8 MB]
13.6]--13-6完成db.go.mp4 [105.1 MB]
13.7]--13-7实现PING命令.mp4 [18.8 MB]
13.14]--13-14实现核心Database(二.mp4 [83.1 MB]
13.12]--13-12实现STRING命令集(二.mp4 [40.3 MB]
{13}--第13章GO实现内存数据库必看.png [493.5 KB]
📁 {12}--第12章GO实现Redis协议解析器
[12.9]--12-9实现ParseSingleLine.mp4 [40.4 MB]
[12.7]--12-7实现ParseMultiBulkHeader.mp4 [53.0 MB]
[12.6]--12-6实现ReadLine.mp4 [81.4 MB]
[12.4]--12-4实现自定义reply.mp4 [86.9 MB]
[12.3]--12-3实现errorreply.mp4 [52.3 MB]
[12.16]--12-16实现EchoDatabase.mp4 [49.2 MB]
[12.17]--12-17测试RESP协议解析.mp4 [22.0 MB]
[12.15]--12-15实现RespHandler(2).mp4 [73.6 MB]
[12.14]--12-14实现RespHandler(1).mp4 [47.0 MB]
[12.13]--12-13实现Connection.mp4 [57.1 MB]
12.5]--12-5实现ParseStream.mp4 [60.3 MB]
[12.10]--12-10实现readBody.mp4 [40.9 MB]
12.2]--12-2实现constreply.mp4 [84.8 MB]
12.1]--12-1Redis网络协议详解.mp4 [32.1 MB]
12.12]--12-12实现parser(2.mp4 [81.7 MB]
12.11]--12-11实现parser(1.mp4 [74.1 MB]
{12}--第12章GO实现Redis协议解析器文档.zip [1.8 MB]
📁 {11}--第11章GO实现TCP服务器
11.5]--11-5测试TCP服务器.mp4 [43.3 MB]
11.4]--11-4实现EchoHandler(二.mp4 [67.4 MB]
11.3]--11-3实现EchoHandler(一.mp4 [73.5 MB]
11.2]--11-2实现完善的TCP服务器.mp4 [87.7 MB]
11.1]--11-1实现最简TCP服务器.mp4 [91.2 MB]
{11}--第11章GO实现TCP服务器文档.zip [1.8 MB]
📁 {10}--第10章Go的其他高级特性
10.6]--10-8本章小结.mp4 [13.2 MB]
10.4]--10-4GO是怎么实现反射的?.mp4 [83.7 MB]
10.5]--10-5实战:使用反射调用方法.mp4 [52.2 MB]
10.3]--10-3recover如何在panic中拯救程序?.mp4 [54.4 MB]
10.2]--10-2defer的底层原理是怎样的?.mp4 [44.5 MB]
10.1]--10-1如何实现GO调用C代码?.mp4 [63.2 MB]
10.1)--10-6作业:如何使用修改后的runtime源码.pdf [283.4 KB]
10.2)--10-7面试题.pdf [51.0 KB]
{10}--第10章Go的其他高级特性文档.png [493.5 KB]
课件.zip [44.1 MB]
{1}--课程说明.zip [1.8 MB]