本书涵盖CGO、Go汇编语言、RPC实现、Web框架实现、分布式系统等高阶主题,针对Go语言有一定经验想深入了解Go语言各种高级用法的开发人员。对于刚学习Go语言的读者,建议先从《Go语言圣经》开始系统学习Go语言的基础知识。
第一章 语言基础
1.1. Go语言创世纪
1.2. Hello, World 的革命
1.3. 数组、字符串和切片
1.4. 函数、方法和接口
1.5. 面向并发的内存模型
1.6. 常见的并发模式
1.7. 错误和异常
1.8. 配置开发环境
第二章 CGO编程
2.1. 快速入门
2.2. CGO基础
2.3. 类型转换
2.4. 函数调用
2.5. 内部机制
2.6. 实战: 封装qsort
2.7. CGO内存模型
2.8. C++类包装
2.9. 静态库和动态库
2.10. Go实现Python模块
2.11. 编译和链接参数
2.12. 补充说明
第三章 汇编语言
3.1. 快速入门
3.2. 计算机结构
3.3. 常量和全局变量
3.4. 函数
3.5. 控制流
3.6. 再论函数
3.7. 例子:Goroutine ID
3.8. Delve调试器
3.9. 补充说明
第四章 RPC和Protobuf
4.1. RPC入门
4.2. Protobuf
4.3. 玩转RPC
4.4. GRPC入门
4.5. GRPC进阶
4.6. GRPC和Protobuf扩展
4.7. pbgo: 基于Protobuf的框架
4.8 grpcurl工具
4.9 补充说明
第五章 Go和Web
5.1. Web开发简介
5.2. Router请求路由
5.3. Middleware中间件
5.4. Validator请求校验
5.5. Database和数据库打交道
5.6. Ratelimit 服务流量限制
5.7. Layout大型web项目分层
5.8. interface 和 table-driven 开发
5.9. 灰度发布和 A/B test
5.10 补充说明
第六章 分布式系统
6.1 分布式 id 生成器
6.2 分布式锁
6.3 延时任务系统
6.4 分布式搜索引擎
6.5 负载均衡
6.6 分布式配置管理
6.7 补充说明
附录
附录A: Go语言常见坑
附录B: 有趣的代码片段
附录C: 作者简介
作者:柴树杉 (chai2010, chaishushan@gmail.com), 曹春晖 (cch123, https://github.com/cch123)
https://www.gitbook.com/book/chai2010/advanced-go-programming-book/
SUMMARY.md
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License。