内容简介
本书从实践出发讲解Go语言编程的进阶知识。
本书共6章,第1章简单回顾Go语言的发展历史;第2章和第3章系统介绍CGO编程和Go汇编语言的用法;第4章对RPC和Protobuf技术进行深入介绍,并讲述如何打造一个自己的RPC系统;第5章介绍工业级环境的Web系统的设计和相关技术;第6章介绍Go语言在分布式领域的一些编程技术。
作者简介
柴树杉
国内第一批的Go语言爱好者,Go语言代码贡献者,CGO资深用户。
同时对WebAssembly技术有一定研究,著有《WebAssembly标准入门》。
Github账号为chai2010。
曹春晖
在Web领域工作多年,开源爱好者。
对大型网站系统的架构和相关工具的实现很感兴趣,并且有一些研究成果。
目前在滴滴平台技术部工作。
目录
第1章 语言基础
1.1 Go语言创世纪
1.2 Hello, World 的革命
1.3 数组、字符串和切片
1.4 函数、方法和接口
1.5 面向并发的内存模型
1.6 常见的并发模式
1.7 错误和异常
1.8 补充说明
第2章 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 编译和链接参数
2.11 补充说明
第3章 汇编语言
3.1 快速入门
3.2 计算机结构
3.3 常量和全局变量
3.4 函数
3.5 控制流
3.6 再论函数
3.7 汇编语言的威力
3.8 例子:Goroutine ID
3.9 Delve调试器
3.10 补充说明
第4章 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 补充说明
第5章 Go和Web
5.1 Web开发简介
5.2 请求路由
5.3 中间件
5.4 请求校验
5.5 和数据库打交道
5.6 服务流量限制
5.7 大型Web项目分层
5.8 接口和表驱动开发
5.9 灰度发布和A/B测试
5.10 补充说明
第6章 分布式系统
6.1 分布式 id 生成器
6.2 分布式锁
6.3 延时任务系统
6.4 分布式搜索引擎
6.5 负载均衡
6.6 分布式配置管理
6.7 分布式爬虫
6.8 补充说明
附录
附录A: Go语言常见坑
附录B: 有趣的代码片段
1. 本站分享的所有书籍均来源于自互联网,我们只进行收集整理,并不对书籍内容进行更改。
2. 部分书籍中可能有书籍压制者放置的广告,这并不是本站所为,请注意甄别。
3. 我们分享这些书籍,纯粹是出于知识分享的热情,以及对互联网分享精神的高度认同和践行,不以盈利为目的。
4. 本站分享的所有书籍,仅供个人学习研究使用,请勿用于任何商业用途,否则产生的一切法律纠纷与本站无关。
5. 如果这些书籍让你有所收获,在条件允许的情况下,请一定购买正版书籍,这是对创作者最好的支持。
6. 如果您是此书籍的版权所有者,且您不希望此作品出现在本站,请联系我们,我们将在收到您的请求后48小时内予以删除。
📖 支持知识自由流动
每一本书的稳定访问,都离不开服务器、存储与带宽的长期维护。






