找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

78

积分

0

好友

12

主题
发表于 3 天前 | 查看: 9| 回复: 0

课程简介

本课程深入Go语言底层原理,系统讲解高并发编程核心技术,包括Goroutine协程、Channel管道、内存模型、网络编程等核心模块。通过完整实现Redis协议解析器、内存数据库及集群功能,掌握Go在高并发场景下的数据结构设计、TCP服务器开发、垃圾回收优化等实战技能。课程涵盖SyncDict、RESP协议、AOF持久化、一致性哈希等关键技术点,帮助学习者构建高性能中间件开发能力,提升对Go运行时机制和系统编程的深度理解。


下载地址

游客,如果您要查看本帖隐藏内容请回复

课程目录

01 课程导学与学习指南

第1-2节:课程概览与学习指南。

02 Go的开发环境搭建与快速入门

第1-4节:环境搭建与快速入门练习。

03 带你重新认识Go语言

第1-8节:Runtime、编译运行与面向对象。

04 Go在高并发下的数据结构

第1-16节:map、接口、内存对齐与并发问题。

05 高并发的核心工具:Goroutine协程

第1-11节:协程本质、调度模型与并发实现。

06 Go高并发下的锁

第1-13节:锁基础、互斥锁与WaitGroup。

07 高并发下的通信方式:Channel管道

第1-8节:Channel原理与高性能设计。

08 高并发应用:TCP网络编程

第1-13节:非阻塞IO、Epoll抽象与Socket。

09 高并发下的内存模型与垃圾回收

第1-12节:栈堆结构、GC优化与性能影响。

10 Go的其他高级特性

第1-8节:反射、defer、recover与C调用。

11 GO实现TCP服务器

第1-5节:TCP服务器实现与EchoHandler。

12 GO实现Redis协议解析器

第1-17节:RESP协议解析与Connection实现。

13 GO实现内存数据库

第1-14节:Dict接口、命令集与Database核心。

14 GO实现Redis持久化

第1-8节:AofHandler实现与数据恢复。

15 GO实现Redis集群

第1-11节:一致性哈希、连接池与集群架构。

16 回顾与总结

第1节:课程总结与未来展望。

--- 点击展开详细目录 ---

第10章Go的其他高级特性

  • 🎬 10-1如何实现GO调用C代码?.mp4
  • 🎬 10-2defer的底层原理是怎样的?.mp4
  • 🎬 10-3recover如何在panic中拯救程序?.mp4
  • 🎬 10-4GO是怎么实现反射的?.mp4
  • 🎬 10-5实战:使用反射调用方法.mp4
  • 🎬 10-8本章小结.mp4

第11章GO实现TCP服务器

  • 🎬 11-1实现最简TCP服务器.mp4
  • 🎬 11-2实现完善的TCP服务器.mp4
  • 🎬 11-3实现EchoHandler(一).mp4
  • 🎬 11-4实现EchoHandler(二).mp4
  • 🎬 11-5测试TCP服务器.mp4

第12章GO实现Redis协议解析器

  • 🎬 12-10实现readBody.mp4
  • 🎬 12-11实现parser(1).mp4
  • 🎬 12-12实现parser(2).mp4
  • 🎬 12-13实现Connection.mp4
  • 🎬 12-14实现RespHandler(1).mp4
  • 🎬 12-15实现RespHandler(2).mp4
  • 🎬 12-16实现EchoDatabase.mp4
  • 🎬 12-17测试RESP协议解析.mp4
  • 🎬 12-1Redis网络协议详解.mp4
  • 🎬 12-2实现constreply.mp4
  • 🎬 12-3实现errorreply.mp4
  • 🎬 12-4实现自定义reply.mp4
  • 🎬 12-5实现ParseStream.mp4
  • 🎬 12-6实现ReadLine.mp4
  • 🎬 12-7实现ParseMultiBulkHeader.mp4
  • 🎬 12-9实现ParseSingleLine.mp4

第13章GO实现内存数据库iclass=new_tagi

  • 🎬 13-10实现KEYS命令集(三).mp4
  • 🎬 13-11实现STRING命令集(一).mp4
  • 🎬 13-12实现STRING命令集(二).mp4
  • 🎬 13-13实现核心Database(一).mp4
  • 🎬 13-14实现核心Database(二).mp4
  • 🎬 13-1定义Dict接口(加片头).mp4
  • 🎬 13-2实现SyncDict(一).mp4
  • 🎬 13-3实现SyncDict(二).mp4
  • 🎬 13-4定义command结构体.mp4
  • 🎬 13-5实现DB.Exec.mp4
  • 🎬 13-7实现PING命令.mp4
  • 🎬 13-8实现KEYS命令集(一).mp4
  • 🎬 13-9实现KEYS命令集(二).mp4

第14章 GO实现Redis持久化

  • 🎬 14-1 定义AofHandler.mp4
  • 🎬 14-2 实现AddAof.mp4
  • 🎬 14-3 实现HandleAof.mp4
  • 🎬 14-4 实现Aof落盘功能(一).mp4
  • 🎬 14-5 实现Aof落盘功能(二).mp4
  • 🎬 14-6 debug闭包问题.mp4
  • 🎬 14-7 实现Aof恢复(一).mp4
  • 🎬 14-8 实现Aof恢复(二).mp4

第15章 GO实现Redis集群

  • 🎬 15-1 详解一致性哈希.mp4
  • 🎬 15-10 实现特殊模式的指令.mp4
  • 🎬 15-11 完成ClusterDatabase.mp4
  • 🎬 15-2 定义NodeMap.mp4
  • 🎬 15-3 实现一致性哈希.mp4
  • 🎬 15-4 集群架构讲解.mp4
  • 🎬 15-5 实现连接工厂.mp4
  • 🎬 15-6 初始化ClusterDatabase.mp4
  • 🎬 15-7 操作连接池.mp4
  • 🎬 15-8 实现三种执行模式.mp4
  • 🎬 15-9 实现defaultFunc.mp4

第16章 回顾与总结

  • 🎬 16-1 一切才刚刚开始.mp4

第1章课程导学与学习指南

  • 🎬 1-2Go课程概览.mp4

第2章Go的开发环境搭建与快速入门

  • 🎬 2-1快速搭建Go学习环境.mp4

第3章带你重新认识Go语言

  • 🎬 3-1为什么要用Go语言?.mp4
  • 🎬 3-2何为Runtime?.mp4
  • 🎬 3-3Go程序是如何编译的?.mp4
  • 🎬 3-4Go程序是如何运行的?.mp4
  • 🎬 3-5Go语言是面向对象的吗?.mp4
  • 🎬 3-6实战:企业级Go项目包管理方法.mp4

第4章Go在高并发下的数据结构

  • 🎬 4-10接口隐式更好还是显式更好?(二).mp4
  • 🎬 4-11nil,空接口,空结构体有什么区别?.mp4
  • 🎬 4-12实战:内存对齐是如何优化程序效率的?(一).mp4
  • 🎬 4-13实战:内存对齐是如何优化程序效率的?(二).mp4
  • 🎬 4-16本章小结.mp4
  • 🎬 4-1什么变量的大小是0字节?.mp4
  • 🎬 4-2数组,字符串,切片底层是一样的吗?(一).mp4
  • 🎬 4-3数组,字符串,切片底层是一样的吗?(二).mp4
  • 🎬 4-4map:重写Redis能用它吗?(一).mp4
  • 🎬 4-5map:重写Redis能用它吗?(二).mp4
  • 🎬 4-6map为什么需要扩容?.mp4
  • 🎬 4-7怎么解决map的并发问题?(一).mp4
  • 🎬 4-8怎么解决map的并发问题?(二).mp4
  • 🎬 4-9接口隐式更好还是显式更好?(一).mp4

第5章高并发的核心工具:Goroutine协程

  • 🎬 5-11本章小结.mp4
  • 🎬 5-1为什么要有协程,线程不好用吗?.mp4
  • 🎬 5-2协程的本质是什么?.mp4
  • 🎬 5-3协程是如何执行的?(一).mp4
  • 🎬 5-4协程是如何执行的?(二).mp4
  • 🎬 5-5为什么要有G-M-P调度模型?.mp4
  • 🎬 5-6如何实现协程并发?.mp4
  • 🎬 5-7抢占式调度解决了什么问题?.mp4
  • 🎬 5-8实战协程太多有什么问题?.mp4

第6章Go高并发下的锁

  • 🎬 6-10段代码只能执行一次,怎么实现?.mp4
  • 🎬 6-11实战:如何排查锁异常问题.mp4
  • 🎬 6-1锁的基础是什么?(一).mp4
  • 🎬 6-2锁的基础是什么?(二).mp4
  • 🎬 6-3互斥锁解决了什么问题?.mp4
  • 🎬 6-4互斥锁是如何工作的?.mp4
  • 🎬 6-5锁饥饿怎么办?.mp4
  • 🎬 6-6只让你看,不让你改,能实现吗?(一).mp4
  • 🎬 6-7只让你看,不让你改,能实现吗?(二).mp4
  • 🎬 6-8只让你看,不让你改,能实现吗?(三).mp4
  • 🎬 6-9如何通过WaitGroup互相等待?.mp4

第7章高并发下的通信方式:Channel管道

  • 🎬 7-1为什么要用Channel,共享内存不好用吗?.mp4
  • 🎬 7-2如何设计高性能Channel?.mp4
  • 🎬 7-3Channel发送数据的底层原理是什么?.mp4
  • 🎬 7-4Channel接收数据的底层原理是什么?.mp4
  • 🎬 7-5实战:非阻塞的Channel怎么做?.mp4
  • 🎬 7-8本章小结.mp4

第8章高并发应用:TCP网络编程

  • 🎬 8-10实战:怎样结合阻塞模型和多路复用?.mp4
  • 🎬 8-13本章小结.mp4
  • 🎬 8-1什么是非阻塞IO?(一).mp4
  • 🎬 8-2什么是非阻塞IO?(二).mp4
  • 🎬 8-3Go是如何抽象Epoll的?(一).mp4
  • 🎬 8-4Go是如何抽象Epoll的?(二).mp4
  • 🎬 8-5NetworkPoller是如何工作的?(一).mp4
  • 🎬 8-6NetworkPoller是如何工作的?(二).mp4
  • 🎬 8-7Go是如何抽象Socket的?(一).mp4
  • 🎬 8-8Go是如何抽象Socket的?(二).mp4
  • 🎬 8-9Go是如何抽象Socket的?(三).mp4

第9章高并发下的内存模型与垃圾回收

  • 🎬 9-12本章小结.mp4
  • 🎬 9-1为什么说Go的栈在堆上?.mp4
  • 🎬 9-2协程栈不够用了怎么办?.mp4
  • 🎬 9-3GO的堆内存结构是怎样的?(1).mp4
  • 🎬 9-4GO的堆内存结构是怎样的?(2).mp4
  • 🎬 9-5GO的堆内存结构是怎样的?(3).mp4
  • 🎬 9-6GO的是如何分配堆内存的?.mp4
  • 🎬 9-7什么样对象需要垃圾回收?.mp4
  • 🎬 9-8如何减小GC对性能的影响?.mp4
  • 🎬 9-9实战:如何优化GC效率?.mp4


您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|云栈社区(YunPan.Plus) ( 苏ICP备2022046150号-2 )

GMT+8, 2025-11-12 22:18 , Processed in 0.057226 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2025 CloudStack.

快速回复 返回顶部 返回列表