Go 实战训练营
邓明
前 Shopee 高级工程师、Beego PMC
1 人已学习
立即订阅
课程目录
已完结/共 225 讲
前置工作:Go 开发环境搭建指南 (4讲)
第一章 8 小时上手 Go 语言 (5讲)
Go 实战训练营
登录|注册
留言
收藏
沉浸
阅读
分享
手机端
回顶部
付费课程,可试看

视频资源获取失败

软件下载
macOS系统下的安装步骤
Windows系统下的安装步骤
邓明老师整理的 Go 环境安装文档
课件与代码地址
1.Go 基本语法和 Web 框架起步
2.type 定义与 Server 抽象
3.错误处理与简单路由树实现
4.并发编程、文件操作与泛型
Web 框架概览:学习路线
Web 框架概览:Beego 框架分析
Web 框架概览:Gin 框架分析
Web 框架概览:Iris 框架分析
Web 框架概览:Echo 框架分析与对比总结
Server 详解与面试要点
路由树:Beego、Gin、Echo 实现与设计总结
路由树:全静态匹配
路由树:TDD 起步
路由树:静态匹配测试用例
路由树:静态匹配之路由查找
路由树:静态匹配之集成 Server
路由树:通配符匹配之路由注册
路由树:通配符匹配之路由查找与测试
路由树:参数路径之基本注册和查找
路由树:参数路径之校验
路由树:参数路径之参数值
路由树总结与面试要点
1. Context 简介
2. Context:Beego Context 设计分析
3. Context:Gin Context 设计分析
4. Context:Echo 和 Iris 的 Context 设计分析
5. Context:处理输入输出总结
6. Context:处理输入之 Body 输入
7. Context:处理输入之表单输入
8. Context:处理输入之查询参数、路径参数和 StringValue
9. Context:处理输出
10. Context 总结与面试要点
11. AOP 简介与不同框架设计概览
12. AOP 设计方案:Middleware
13. Middleware:AccessLog
14. Middleware:Trace 简介和 OpenTelemetry
15. Middleware:OpenTelemetry 测试
16. Middleware:OpenTelemetry 总结
17. Prometheus 详解
18. Middleware:Prometheus
19. Middleware 例子:错误页面
20. Middleware 例子:从 panic 中恢复
21. Middleware 总结和面试
1. 页面渲染:模板引擎接口定义
2. 页面渲染:Template 语法
3. 页面渲染:GoTemplateEngin 实现、面试要点总结
4. 文件处理:文件基本操作
5. 文件处理:文件上传
6. 文件处理:文件下载
7. 文件处理:静态资源处理、面试要点总结
8. Session:概念与不同框架的 Session 设计分析
9. Session:接口设计
10. Session:用户使用示例和 Manager 设计
11. Session:web.Context 缓存 Session
12. Session:基于内存的实现
13. Session:基于 Redis 的实现
14. Session:基于 Cookie 的实现
15. Session:测试与面试要点总结
1. ORM 学习路线图
2. ORM 框架概览:Beego ORM 分析
3. ORM 框架概览:GORM 和 Ent 分析
4. ORM 框架总结和面试要点
5. SELECT:Beego、GORM、Ent 的 SQL构造分析
6. SELECT:核心接口定义
7. SELECT:SELECT 语句规范、Selector 定义、FROM 语句实现
8. SELECT:WHRER 语句、Expression 抽象和面试要点
9. 元数据简介
10. 元数据:反射-读字段
11. 元数据:反射-写字段
12. 元数据:反射-方法
13. 元数据:反射-遍历
14. 元数据:反射的开源实例、面试要点总结
15. 元数据:反射解析模型
16. 元数据:利用元数据改造 Selector、元数据阶段总结
1. 元数据:注册中心
2. 元数据:注册中心并发问题
3. 元数据:标签自定义列名
4. 元数据:接口自定义表名
5. 元数据:编程方式自定义表名和列名
6. 元数据:总结与面试要点
7. SQL 编程:增删改查
8. SQL 编程:Valuer 和 Scanner 接口
9. SQL 编程:事务与隔离级别
10. SQL 编程:Prepare Statement
11. SQL 编程:sqlmock 入门、SQL 编程面试要点
12. 结果集处理:Open 与 OpenDB
13. 结果集处理:发起查询异常情况
14. 结果集处理:反射处理结果集
15. 结果集处理:代码优化与总结
16. 加餐:Option 设计模式
1. 结果集处理:unsafe 入门
2. 结果集处理:unsafe 实现
3. 结果集处理:valuer 重构与基准测试
4. 结果集处理:总结与面试要点
5. SELECT 进阶:指定简单列
6. SELECT 进阶:指定聚合函数
7. SELECT 进阶:原生表达式
8. SELECT 进阶:别名
9. INSERT:INSERT 语句概览
10. INSERT:最简实现
11. INSERT:指定列
12. INSERT:UPSERT API 定义
13. INSERT:MySQL UPSERT 基本实现
14. INSERT:方言抽象 Dialect
15. INSERT:builder 抽象与重构
16. INSERT:SQLite UPSERT 实现、方言抽象局限性
17. INSERT:INSERT 执行
18. INSERT:unsafe 读取字段、总结与面试要点
1. 事务 API:不同框架设计分析、设计与实现
2. 事务 API:事务闭包 API、总结与面试要点
3. AOP 方案:不同框架设计分析、方案总结
4. AOP 方案:Middleware 接入与 querylog
5. AOP 方案:Middleware 各种实现、总结与面试要点
6. 集成测试:起步与 MySQL 的增删改查
7. 集成测试:TestSuite 与 Suite
8. 集成测试:细节探讨与要点总结
9. 原生查询详解
1. 复杂查询:JOIN 查询简介
2. 复杂查询:JOIN API 定义
3. 复杂查询:JOIN - USING 用法
4. 复杂查询:JOIN - ON 用法
5. 复杂查询:补充测试及总结
6. protobuf 插件魔改
7. 代码生成:AST 简介
8. 代码生成:AST 编程入门
9. 代码生成:AST 主要接口和实现
10. 代码生成:生成辅助代码(一)
11. 代码生成:生成辅助代码(二)
12. protobuf 与代码生成总结与面试要点
1. 缓存模块路线图
2. 并发编程:context 基本方法
3. 并发编程:context 安全传递数据
4. 并发编程:context 开源例子
5. 并发编程:context 底层实现、面试要点与总结
6. 并发编程:sync.Mutex 入门和 double-check
7. 并发编程:sync.Mutex 原理
8. 并发编程:sync.Mutex 面试要点与总结
9. 并发编程:sync.Once 详解
10. 并发编程:sync.Pool 入门和原理
11. 并发编程:sync.Pool 开源实例、面试要点与总结
12. 并发编程:sync.WaitGroup 详解
13. 并发编程:channel 编程入门
14. 并发编程:利用 channel 实现一个基于内存的消息队列
15. 并发编程:利用 channel 实现一个任务池
加餐:参与开源的一般步骤
1. 并发编程:channel 原理、底层实现与面试要点
2. 缓存 API:缓存 API 设计与实现
3. 缓存 API:本地缓存实现与过期时间控制
4. 缓存 API:evict 回调与测试
5. 缓存 API:控制本地缓存内存
6. 缓存 API:本地缓存回顾与总结
7. 缓存 API:Redis 实现
8. 缓存 API:组合 API、面试要点与总结
9. 缓存模式:read-through 模式
10. 缓存模式:write-through、write-back、refresh-ahead
11. 缓存异常详解、面试要点与总结
1. 分布式锁:用 Redis 来实现一个分布式锁
2. Redis 分布式锁:锁实现单元测试
3. Redis 分布式锁:锁实现集成测试
4. Redis 分布式锁:手动续约实现与测试
5. Redis 分布式锁:如何使用 Refresh 方法
6. Redis 分布式锁:自动续约
7. Redis 分布式锁:加锁重试
8. Redis 分布式锁:singleflight 优化、面试要点与总结
9. 缓存一致性:问题根源与解决方案
1. 微服务模块学习路线
2. 网络编程:服务端详解
3. 网络编程:客户端详解、简单 TCP 服务器
4. 网络编程面试要点与总结
5. 连接池:基本原理、开源实例 silenceper/pool
6. 连接池:sql.DB 中连接池管理
7. 连接池:手写简单的连接池、连接池总结
8. 微服务框架概览
9. 最简 RPC:RPC 基本原理
10. 最简 RPC:捕捉本地调用
11. 最简 RPC:发送请求与返回响应
12. 最简 RPC:重构代码、总结与面试要点
1. RPC:RPC 协议设计概览、不同 RPC 框架的协议设计
2. RPC:设计自己的 RPC 协议
3. RPC 协议设计:请求编解码详解
4. RPC 协议设计:响应编解码、重构代码与 error 处理
5. RPC 协议设计总结与面试要点
6. RPC 序列化协议:原理概述与 JSON 实现
7. RPC 序列化协议:Proto 实现与总结
8. RPC 调用语义:异步、单向和回调
9. RPC 超时控制:链路超时控制
10. RPC 超时控制:超时时间传递
11. RPC 超时控制:链路超时实现、总结与面试要点
1. 服务注册与发现概览
2. 服务注册与发现:不同框架接口与实现
3. 服务注册与发现:以 gRPC 为底层通信协议
4. gRPC 服务注册与发现模型
5. gRPC:设计并实现一个 etcd 注册中心
6. gRPC:etcd 服务发现实现
7. 服务注册与发现总结
8. 服务注册与发现面试要点详解
1. 负载均衡:轮询和加权轮询详解
2. 负载均衡:轮询实现
3. 负载均衡:加权轮询实现
4. 负载均衡:加权轮询算法测试、如何获取权重
5. 负载均衡:随机和加权随机、哈希和一致性哈希详解
6. 负载均衡:动态算法
7. 负载均衡总结
8. 路由:路由策略详解
9. 路由:实现分组功能
10. 路由:过滤功能对负载均衡的影响
11. 集群:集群Cluster详解
12. 集群:gRPC中如何实现广播
13. 集群:gRPC广播的响应处理策略
14. 负载均衡、路由和集群总结与面试要点
1. 可用性:可用性概述、不同框架的AOP方案
2. 可用性:故障检测之令牌桶算法
3. 可用性:故障检测之漏桶算法、固定窗口算法
4. 可用性:故障检测之滑动窗口算法
5. 可用性:基于Redis 的固定窗口算法实现
6. 可用性:基于 Redis 的滑动窗口算法实现
7. 可用性总结与面试要点
8. 可观测性:不同框架设计方案、metrics/opentelemetry实现
9. 可观测性:基于可观测性的服务治理
课程总结
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论