Go 实战训练营
邓明
前 Shopee 高级工程师、Beego PMC
1 人已学习
立即订阅
课程目录
已完结/共 225 讲
前置工作:Go 开发环境搭建指南 (4讲)
软件下载
时长 00:00
macOS系统下的安装步骤
时长 14:45
Windows系统下的安装步骤
时长 09:27
邓明老师整理的 Go 环境安装文档
时长 00:00
第一章 8 小时上手 Go 语言 (5讲)
课件与代码地址
时长 00:00
1.Go 基本语法和 Web 框架起步
时长 01:49:02
2.type 定义与 Server 抽象
时长 02:16:44
3.错误处理与简单路由树实现
时长 02:28:09
4.并发编程、文件操作与泛型
时长 02:06:14
第二章 Web 框架之 Server 与路由树 (18讲)
Web 框架概览:学习路线
时长 02:17
Web 框架概览:Beego 框架分析
时长 16:28
Web 框架概览:Gin 框架分析
时长 12:35
Web 框架概览:Iris 框架分析
时长 06:11
Web 框架概览:Echo 框架分析与对比总结
时长 07:40
Server 详解与面试要点
时长 43:51
路由树:Beego、Gin、Echo 实现与设计总结
时长 16:40
路由树:全静态匹配
时长 08:22
路由树:TDD 起步
时长 37:22
路由树:静态匹配测试用例
时长 28:35
路由树:静态匹配之路由查找
时长 23:57
路由树:静态匹配之集成 Server
时长 09:13
路由树:通配符匹配之路由注册
时长 13:37
路由树:通配符匹配之路由查找与测试
时长 04:29
路由树:参数路径之基本注册和查找
时长 07:45
路由树:参数路径之校验
时长 02:46
路由树:参数路径之参数值
时长 10:45
路由树总结与面试要点
时长 16:25
第三章 Web 框架之 Context 与 AOP 方案 (21讲)
1. Context 简介
时长 16:00
2. Context:Beego Context 设计分析
时长 06:36
3. Context:Gin Context 设计分析
时长 05:09
4. Context:Echo 和 Iris 的 Context 设计分析
时长 03:50
5. Context:处理输入输出总结
时长 04:11
6. Context:处理输入之 Body 输入
时长 11:55
7. Context:处理输入之表单输入
时长 11:11
8. Context:处理输入之查询参数、路径参数和 StringValue
时长 15:39
9. Context:处理输出
时长 11:37
10. Context 总结与面试要点
时长 11:56
11. AOP 简介与不同框架设计概览
时长 13:36
12. AOP 设计方案:Middleware
时长 22:06
13. Middleware:AccessLog
时长 28:26
14. Middleware:Trace 简介和 OpenTelemetry
时长 34:58
15. Middleware:OpenTelemetry 测试
时长 28:12
16. Middleware:OpenTelemetry 总结
时长 03:58
17. Prometheus 详解
时长 14:17
18. Middleware:Prometheus
时长 16:35
19. Middleware 例子:错误页面
时长 12:06
20. Middleware 例子:从 panic 中恢复
时长 08:31
21. Middleware 总结和面试
时长 12:44
第四章 Web 框架之页面渲染、文件处理与 Session (15讲)
1. 页面渲染:模板引擎接口定义
时长 25:25
2. 页面渲染:Template 语法
时长 38:09
3. 页面渲染:GoTemplateEngin 实现、面试要点总结
时长 24:14
4. 文件处理:文件基本操作
时长 14:02
5. 文件处理:文件上传
时长 27:24
6. 文件处理:文件下载
时长 14:44
7. 文件处理:静态资源处理、面试要点总结
时长 41:15
8. Session:概念与不同框架的 Session 设计分析
时长 29:48
9. Session:接口设计
时长 25:07
10. Session:用户使用示例和 Manager 设计
时长 21:55
11. Session:web.Context 缓存 Session
时长 10:10
12. Session:基于内存的实现
时长 27:23
13. Session:基于 Redis 的实现
时长 29:54
14. Session:基于 Cookie 的实现
时长 09:46
15. Session:测试与面试要点总结
时长 18:44
第五章 ORM 框架之 SELECT 与元数据(一) (16讲)
1. ORM 学习路线图
时长 07:59
2. ORM 框架概览:Beego ORM 分析
时长 19:15
3. ORM 框架概览:GORM 和 Ent 分析
时长 10:48
4. ORM 框架总结和面试要点
时长 14:06
5. SELECT:Beego、GORM、Ent 的 SQL构造分析
时长 16:23
6. SELECT:核心接口定义
时长 17:26
7. SELECT:SELECT 语句规范、Selector 定义、FROM 语句实现
时长 24:20
8. SELECT:WHRER 语句、Expression 抽象和面试要点
时长 01:03:28
9. 元数据简介
时长 09:00
10. 元数据:反射-读字段
时长 41:10
11. 元数据:反射-写字段
时长 14:13
12. 元数据:反射-方法
时长 31:57
13. 元数据:反射-遍历
时长 16:55
14. 元数据:反射的开源实例、面试要点总结
时长 14:02
15. 元数据:反射解析模型
时长 32:19
16. 元数据:利用元数据改造 Selector、元数据阶段总结
时长 12:15
第五章 ORM 框架之元数据、SQL 编程与结果集处理(二) (16讲)
1. 元数据:注册中心
时长 31:46
2. 元数据:注册中心并发问题
时长 14:44
3. 元数据:标签自定义列名
时长 23:45
4. 元数据:接口自定义表名
时长 08:16
5. 元数据:编程方式自定义表名和列名
时长 22:29
6. 元数据:总结与面试要点
时长 06:49
7. SQL 编程:增删改查
时长 29:54
8. SQL 编程:Valuer 和 Scanner 接口
时长 10:10
9. SQL 编程:事务与隔离级别
时长 11:58
10. SQL 编程:Prepare Statement
时长 09:59
11. SQL 编程:sqlmock 入门、SQL 编程面试要点
时长 14:55
12. 结果集处理:Open 与 OpenDB
时长 09:26
13. 结果集处理:发起查询异常情况
时长 20:54
14. 结果集处理:反射处理结果集
时长 12:49
15. 结果集处理:代码优化与总结
时长 28:24
16. 加餐:Option 设计模式
时长 11:54
第五章 ORM 框架之结果集处理、SELECT 进阶与 INSERT(三) (18讲)
1. 结果集处理:unsafe 入门
时长 37:56
2. 结果集处理:unsafe 实现
时长 18:59
3. 结果集处理:valuer 重构与基准测试
时长 55:40
4. 结果集处理:总结与面试要点
时长 20:40
5. SELECT 进阶:指定简单列
时长 20:54
6. SELECT 进阶:指定聚合函数
时长 14:05
7. SELECT 进阶:原生表达式
时长 20:12
8. SELECT 进阶:别名
时长 13:47
9. INSERT:INSERT 语句概览
时长 07:50
10. INSERT:最简实现
时长 32:54
11. INSERT:指定列
时长 10:12
12. INSERT:UPSERT API 定义
时长 12:20
13. INSERT:MySQL UPSERT 基本实现
时长 15:09
14. INSERT:方言抽象 Dialect
时长 11:13
15. INSERT:builder 抽象与重构
时长 22:49
16. INSERT:SQLite UPSERT 实现、方言抽象局限性
时长 18:33
17. INSERT:INSERT 执行
时长 14:46
18. INSERT:unsafe 读取字段、总结与面试要点
时长 17:40
第五章 ORM 框架之事务 API、AOP 方案与集成测试(四) (9讲)
1. 事务 API:不同框架设计分析、设计与实现
时长 24:32
2. 事务 API:事务闭包 API、总结与面试要点
时长 26:39
3. AOP 方案:不同框架设计分析、方案总结
时长 18:48
4. AOP 方案:Middleware 接入与 querylog
时长 37:04
5. AOP 方案:Middleware 各种实现、总结与面试要点
时长 32:19
6. 集成测试:起步与 MySQL 的增删改查
时长 22:13
7. 集成测试:TestSuite 与 Suite
时长 33:50
8. 集成测试:细节探讨与要点总结
时长 16:41
9. 原生查询详解
时长 45:43
第五章 ORM 框架之复杂查询、Protobuf 与代码生成(五) (12讲)
1. 复杂查询:JOIN 查询简介
时长 11:36
2. 复杂查询:JOIN API 定义
时长 12:34
3. 复杂查询:JOIN - USING 用法
时长 16:43
4. 复杂查询:JOIN - ON 用法
时长 15:24
5. 复杂查询:补充测试及总结
时长 14:57
6. protobuf 插件魔改
时长 17:58
7. 代码生成:AST 简介
时长 11:17
8. 代码生成:AST 编程入门
时长 18:12
9. 代码生成:AST 主要接口和实现
时长 09:43
10. 代码生成:生成辅助代码(一)
时长 29:57
11. 代码生成:生成辅助代码(二)
时长 30:29
12. protobuf 与代码生成总结与面试要点
时长 07:54
第六章 缓存模块之并发编程(一) (16讲)
1. 缓存模块路线图
时长 05:46
2. 并发编程:context 基本方法
时长 22:53
3. 并发编程:context 安全传递数据
时长 19:38
4. 并发编程:context 开源例子
时长 11:34
5. 并发编程:context 底层实现、面试要点与总结
时长 10:18
6. 并发编程:sync.Mutex 入门和 double-check
时长 17:59
7. 并发编程:sync.Mutex 原理
时长 27:26
8. 并发编程:sync.Mutex 面试要点与总结
时长 11:28
9. 并发编程:sync.Once 详解
时长 08:07
10. 并发编程:sync.Pool 入门和原理
时长 26:38
11. 并发编程:sync.Pool 开源实例、面试要点与总结
时长 15:18
12. 并发编程:sync.WaitGroup 详解
时长 19:25
13. 并发编程:channel 编程入门
时长 12:12
14. 并发编程:利用 channel 实现一个基于内存的消息队列
时长 24:04
15. 并发编程:利用 channel 实现一个任务池
时长 25:59
加餐:参与开源的一般步骤
时长 47:27
第六章 缓存模块之缓存 API、缓存模式与缓存异常(二) (11讲)
1. 并发编程:channel 原理、底层实现与面试要点
时长 37:19
2. 缓存 API:缓存 API 设计与实现
时长 22:07
3. 缓存 API:本地缓存实现与过期时间控制
时长 43:04
4. 缓存 API:evict 回调与测试
时长 30:25
5. 缓存 API:控制本地缓存内存
时长 21:10
6. 缓存 API:本地缓存回顾与总结
时长 07:55
7. 缓存 API:Redis 实现
时长 57:16
8. 缓存 API:组合 API、面试要点与总结
时长 14:00
9. 缓存模式:read-through 模式
时长 44:05
10. 缓存模式:write-through、write-back、refresh-ahead
时长 22:14
11. 缓存异常详解、面试要点与总结
时长 47:46
第六章 缓存模块之 Redis 分布式锁与缓存一致性(三) (9讲)
1. 分布式锁:用 Redis 来实现一个分布式锁
时长 35:10
2. Redis 分布式锁:锁实现单元测试
时长 23:18
3. Redis 分布式锁:锁实现集成测试
时长 30:26
4. Redis 分布式锁:手动续约实现与测试
时长 26:28
5. Redis 分布式锁:如何使用 Refresh 方法
时长 18:10
6. Redis 分布式锁:自动续约
时长 12:00
7. Redis 分布式锁:加锁重试
时长 41:49
8. Redis 分布式锁:singleflight 优化、面试要点与总结
时长 19:21
9. 缓存一致性:问题根源与解决方案
时长 22:57
第七章 微服务框架之网络编程与最简 RPC(一) (12讲)
1. 微服务模块学习路线
时长 11:58
2. 网络编程:服务端详解
时长 30:43
3. 网络编程:客户端详解、简单 TCP 服务器
时长 32:50
4. 网络编程面试要点与总结
时长 09:54
5. 连接池:基本原理、开源实例 silenceper/pool
时长 24:21
6. 连接池:sql.DB 中连接池管理
时长 12:58
7. 连接池:手写简单的连接池、连接池总结
时长 30:24
8. 微服务框架概览
时长 34:37
9. 最简 RPC:RPC 基本原理
时长 25:48
10. 最简 RPC:捕捉本地调用
时长 41:21
11. 最简 RPC:发送请求与返回响应
时长 38:12
12. 最简 RPC:重构代码、总结与面试要点
时长 23:37
第七章 微服务框架之 RPC 协议设计与实现(二) (11讲)
1. RPC:RPC 协议设计概览、不同 RPC 框架的协议设计
时长 18:21
2. RPC:设计自己的 RPC 协议
时长 19:32
3. RPC 协议设计:请求编解码详解
时长 01:02:07
4. RPC 协议设计:响应编解码、重构代码与 error 处理
时长 41:59
5. RPC 协议设计总结与面试要点
时长 05:59
6. RPC 序列化协议:原理概述与 JSON 实现
时长 27:19
7. RPC 序列化协议:Proto 实现与总结
时长 14:46
8. RPC 调用语义:异步、单向和回调
时长 39:06
9. RPC 超时控制:链路超时控制
时长 10:15
10. RPC 超时控制:超时时间传递
时长 26:59
11. RPC 超时控制:链路超时实现、总结与面试要点
时长 22:11
第七章 微服务框架之服务注册与发现(三) (8讲)
1. 服务注册与发现概览
时长 27:55
2. 服务注册与发现:不同框架接口与实现
时长 38:39
3. 服务注册与发现:以 gRPC 为底层通信协议
时长 19:14
4. gRPC 服务注册与发现模型
时长 15:37
5. gRPC:设计并实现一个 etcd 注册中心
时长 01:10:52
6. gRPC:etcd 服务发现实现
时长 52:46
7. 服务注册与发现总结
时长 22:56
8. 服务注册与发现面试要点详解
时长 13:32
第七章 微服务框架之负载均衡、路由与集群(四) (14讲)
1. 负载均衡:轮询和加权轮询详解
时长 13:47
2. 负载均衡:轮询实现
时长 30:31
3. 负载均衡:加权轮询实现
时长 27:12
4. 负载均衡:加权轮询算法测试、如何获取权重
时长 23:07
5. 负载均衡:随机和加权随机、哈希和一致性哈希详解
时长 30:09
6. 负载均衡:动态算法
时长 16:26
7. 负载均衡总结
时长 17:22
8. 路由:路由策略详解
时长 13:54
9. 路由:实现分组功能
时长 27:49
10. 路由:过滤功能对负载均衡的影响
时长 13:23
11. 集群:集群Cluster详解
时长 20:15
12. 集群:gRPC中如何实现广播
时长 26:44
13. 集群:gRPC广播的响应处理策略
时长 17:57
14. 负载均衡、路由和集群总结与面试要点
时长 12:08
第七章 微服务框架之可用性与可观测性(五) (10讲)
1. 可用性:可用性概述、不同框架的AOP方案
时长 14:03
2. 可用性:故障检测之令牌桶算法
时长 35:56
3. 可用性:故障检测之漏桶算法、固定窗口算法
时长 25:16
4. 可用性:故障检测之滑动窗口算法
时长 20:21
5. 可用性:基于Redis 的固定窗口算法实现
时长 27:35
6. 可用性:基于 Redis 的滑动窗口算法实现
时长 15:26
7. 可用性总结与面试要点
时长 23:48
8. 可观测性:不同框架设计方案、metrics/opentelemetry实现
时长 26:43
9. 可观测性:基于可观测性的服务治理
时长 21:41
课程总结
时长 44:44
Go 实战训练营
15
15
1.0x
00:00/00:00
0.75x
1.0x
1.25x
1.5x
2.0x
登录
|
注册
邓明老师整理的 Go 环境安装文档
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
深入了解
翻译
英语
中文简体
中文繁体
法语
德语
日语
韩语
俄语
西班牙语
阿拉伯语
解释
总结
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Go 实战训练营 》
立即购买
©
版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录
后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
显示
设置
留言
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部