悦读宝库 -GO微服务实战
本书资料更新时间:2025-01-19 20:19:37

GO微服务实战 下载 pdf 百度网盘 epub 免费 2025 电子书 mobi 在线

GO微服务实战精美图片
》GO微服务实战电子书籍版权问题 请点击这里查看《

GO微服务实战书籍详细信息

  • ISBN:9787111674122
  • 作者:暂无作者
  • 出版社:暂无出版社
  • 出版时间:2021-3
  • 页数:384
  • 价格:89元
  • 纸张:暂无纸张
  • 装帧:暂无装帧
  • 开本:暂无开本
  • 语言:未知
  • 丛书:暂无丛书
  • TAG:暂无
  • 豆瓣评分:暂无豆瓣评分
  • 豆瓣短评:点击查看
  • 豆瓣讨论:点击查看
  • 豆瓣目录:点击查看
  • 读书笔记:点击查看
  • 原文摘录:点击查看
  • 更新时间:2025-01-19 20:19:37

内容简介:

随着互联网和软件的大型化、复杂化,研发团队的规模越来越大,运维和研发人员的工作交集越来越多,软件的迭代速度也越来越快。在这个大前提下,微服务模式在大型项目中开始风靡。Go语言因其简洁的语法、高效的开发效率和优秀的性能等诸多天然优势广泛应用于互联网公司。越来越多的高并发应用使用Go语言进行开发。本书以实践的角度全方位介绍如何通过Go语言实现微服务模式。

【本书的主要内容和特色】

面向所有工程师,即便是没有Go语言基础的Java、PHP、Python工程师也可以直接上手使用,书中对Go语言进行了全面精炼的介绍。“给小白的Go语言微服务实战书籍”是本书贯穿始终的写作目的,书中代码注释详细、理论解释形象。

对于微服务模式,书中并未直接给出框架,而是从理论层面入手进行了探讨,让读者“知其然,知其所以然”。

包含大量案例,对于重要的内容都给出了案例及相关分析,且每一部分都有一个案例从0开始分析、构建,指导读者从使用的角度去思考如何活学活用,并在GitHub上提供了可运行的完整代码。

本书自始至终都围绕Go语言、微服务和实战这三大特色,全书从Go语言的基础引入,到Go语言的进阶、微服务的理论,再到最后的微服务实战,都给出了技术实现和实例代码,让有编程基础的读者可以深入浅出地学习和实践。

本书针对Go语言进行微服务开发做了全面细致的介绍,书中内容包括四大部分。

第一部分为Go语言基础(第1~7章),包括Go语言基础语法、Go语言基本特性和Go语言实战项目等内容。

第二部分为Go语言进阶(第8~10章),主要介绍Go语言的并发编程进阶、Go语言Web编程以及综合实战。

第三部分为微服务理论(第11~18章),包括微服务模式的理论基础、微服务的进程间通信、微服务的分布式事务管理、领域驱动设计(DDD)、微服务测试、Docker及ES-CQRS策略。其中,微服务进程间通信重点介绍了gRPC,ES-CQRS策略部分给出了Go语言的实现。

第四部分为微服务实战(第19~22章),这一部分通过实战项目讲解了微服务的生产环境、日志和监控、持续部署等内容。

书中每一部分都提供了示例代码或实战项目,供读者边学习边动手实践,尽量做到让有Go语言基础的人尽快了解、掌握微服务模式。


书籍目录:

第一部分 Go语言基础

第1章 Go语言程序基础

2

1.1 Hello,World!

2

1.2 变量、指针及赋值

5

1.2.1 变量和常量

5

1.2.2 指针

8

1.2.3 赋值

9

1.3 包及作用域

10

1.4 选择和循环

12

1.5 垃圾回收

13

1.6 小结

15

第2章 基本数据类型

16

2.1 整型

17

2.1.1 整型取值范围

17

2.1.2 运算符

18

2.2 浮点型

19

2.3 复数和布尔类型

21

2.4 格式化说明符

22

2.5 小结

22

第3章 字符串与复合数据类型

23

3.1 字符串和数组

23

3.1.1 字符串

24

3.1.2 数组

26

3.2 slice

27

3.2.1 结构定义

27

3.2.2 基本操作

28

3.2.3 append

30

3.2.4 copy

31

3.2.5 其他

32

3.3 map

33

3.3.1 定义

33

3.3.2 基本操作

33

3.4 struct

35

3.4.1 结构定义

36

3.4.2 基本操作

37

3.4.3 组合

38

3.5 JSON

40

3.6 小结

40

第4章 函数、方法、接口和反射

41

4.1 函数

41

4.1.1 函数的定义

41

4.1.2 闭包

42

4.1.3 作用域

43

4.1.4 多返回值及变长参数

45

4.1.5 defer关键字

46

4.2 方法

46

4.3 接口

50

4.4 反射

54

4.5 小结

57

第5章 并发编程

59

5.1 协程

59

5.1.1 核心概念

60

5.1.2 goroutine的基本使用

60

5.1.3 sync.WaitGroup

62

5.2 通道

64

5.2.1 channel写入数据

64

5.2.2 channel接收数据

65

5.2.3 以channel作为函数参数

66

5.2.4 缓存channel

67

5.2.5 select

70

5.2.6 超时检查

71

5.3 pipeline

74

5.4 小结

76

第6章 包和代码测试

77

6.1 包及Go工具

77

6.1.1 包导入

78

6.1.2 Go工具

79

6.2 代码优化

84

6.2.1 Go代码的优化

84

6.2.2 性能分析

84

6.3 测试

90

6.3.1 功能测试函数

91

6.3.2 基准测试函数

93

6.3.3 示例函数

96

6.4 小结

98

第7章 综合实战案例

99

7.1 案例需求

99

7.2 通信协议

100

7.3 服务器端

104

7.4 客户端

109

7.5 小结

116

第二部分 Go语言进阶

第8章 并发编程进阶

118

8.1 竞态与并发模式

118

8.1.1 数据竞态

118

8.1.2 并发原理

123

8.2 sync包

126

8.2.1 sync.Mutex互斥锁

126

8.2.2 sync.RWMutex多读写锁

128

8.2.3 sync.Once

130

8.2.4 sync.Cond

131

8.2.5 sync.Pool

134

8.2.6 sync.Map

136

8.3 context包

138

8.3.1 应用场景

138

8.3.2 定义

139

8.3.3 继承

141

8.3.4 示例

142

8.4 工作池

145

8.5 小结

151

第9章 Go Web编程

152

9.1 net/http包

152

9.1.1 Go Web工作的基本原理

152

9.1.2 http详解

156

9.2 Web框架

162

9.2.1 选择框架

162

9.2.2 httprouter框架

163

9.3 Web底层服务

165

9.3.1 Scoket简介

165

9.3.2 TCP Socket

166

9.3.3 UDP Socket

169

9.3.4 WebSocket

171

9.4 中间件

174

9.4.1 基本用法

174

9.4.2 进阶用法

176

9.5 数据库访问

179

9.5.1 database/sql接口

180

9.5.2 sqlx

182

9.6 小结

183

第10章 综合案例

184

10.1 案例需求

184

10.2 项目代码布局

186

10.3 配置和日志

187

10.3.1 配置

188

10.3.2 日志

190

10.4 模型

191

10.5 gin框架

193

10.6 小结

196

第三部分 微服务理论

第11章 微服务

198

11.1 微服务简介

198

11.1.1 什么是微服务

198

11.1.2 微服务的由来

198

11.1.3 微服务与微服务架构

199

11.2 系统架构的演进

199

11.2.1 单体架构

200

11.2.2 垂直架构

201

11.2.3 SOA

201

11.2.4 微服务架构

202

11.3 小结

205

第12章 微服务化策略

206

12.1 微服务架构风格

206

12.1.1 每个服务都拥有独立的数据库

206

12.1.2 基于API的模块化

207

12.2 微服务化进程中的重点问题

207

12.2.1 微服务的通信

207

12.2.2 事务管理的一致性

208

12.2.3 微服务数据查询

208

12.2.4 微服务部署

208

12.2.5 微服务生产环境监控

209

12.2.6 微服务的自动化测试

209

12.3 微服务的拆分

209

12.3.1 拆分的指导原则

210

12.3.2 依据业务能力拆分

210

12.3.3 依据领域驱动设计拆分

211

12.3.4 服务API的定义

213

12.4 小结

214

第13章 微服务中的进程间通信

215

13.1 微服务中的进程间通信概述

215

13.1.1 交互模式

215

13.1.2 API定义

217

13.2 protobuf格式

217

13.2.1 protobuf简介

217

13.2.2 protobuf的简单使用

217

13.3 gRPC包

219

13.3.1 net/rpc包

219

13.3.2 gRPC简介

221

13.3.3 Go语言实现gRPC调用

222

13.4 微服务发现:consul

224

13.5 小结

226

第14章 微服务中的分布式事务管理

227

14.1 微服务下的事务管理

227

14.1.1 面临的难题

227

14.1.2 SRP的折衷

228

14.2 微服务中处理事务的几种方式

229

14.2.1 避免跨微服务的事务

229

14.2.2 基于XA协议的两阶段提交协议

229

14.2.3 最终一致性和补偿

231

14.3 Saga模式

234

14.3.1 Saga模式介绍

234

14.3.2 编排模式

235

14.3.3 编配模式

237

14.4 Saga模式的Go语言示例

238

14.4.1 Saga对象的Go语言实现

238

14.4.2 中央协调器的Go语言实现

239

14.5 小结

243

第15章 领域驱动设计的Go语言实现

244

15.1 聚合模式介绍

244

15.2 使用聚合模式

247

15.2.1 聚合拥有明确的边界

247

15.2.2 聚合的规则

248

15.2.3 聚合颗粒度

250

15.2.4 使用聚合设计业务逻辑

250

15.3 领域事件

251

15.4 Go语言领域模型的模拟实现

252

15.4.1 聚合

253

15.4.2 实体和值对象

253

15.4.3 服务

255

15.5 小结

257

第16章 微服务中的测试

258

16.1 测试金字塔

258

16.2 单元测试

260

16.3 依赖注入和mock测试

263

16.4 行为驱动开发

266

16.5 使用Docker Compose测试

272

16.6 小结

275

第17章 微服务运行环境:Docker

276

17.1 Docker介绍

276

17.1.1 Docker引擎

276

17.1.2 守护进程

277

17.1.3 镜像及容器

277

17.1.4 仓库

278

17.1.5 数据卷

278

17.2 运行第一个Docker容器

279

17.2.1 Docker安装

279

17.2.2 HelloWorld程序示例

279

17.2.3 运行复杂一点的容器

280

17.3 Docker数据持久化

282

17.3.1 数据卷

282

17.3.2 bind mount

284

17.4 Docker网络

285

17.4.1 桥接驱动及自定义bridge

285

17.4.2 Host模式、Overlay模式及None模式

288

17.5 小结

289

第18章 Go语言基于ES-CQRS的微服务实践

290

18.1 理论介绍

290

18.1.1 事件溯源

290

18.1.2 命令查询职责分离

291

18.2 ES-CQRS在Go语言中的实现示例

292

18.2.1 需求

293

18.2.2 分析与设计

293

18.2.3 核心实现

296

18.3 小结

299

第四部分 微服务实战

第19章 生产环境的微服务安全

302

19.1 加密和签名

302

19.1.1 对称密钥加密

302

19.1.2 公钥密码

303

19.1.3 X.509数字证书

303

19.1.4 TLS/SSL

304

19.2 外部安全

304

19.2.1 防火墙

304

19.2.2 页面应用的防火墙

305

19.2.3 API网关

305

19.2.4 DDoS保护

306

19.3 应用安全

307

19.3.1 攻击者如何绕过防火墙

308

19.3.2 输入校验

308

19.3.3 TLS

310

19.3.4 在rest中进行数据保护

313

19.3.5 JWT

314

19.3.6 大消息的非对称加密

315

19.4 运维安全

316

19.4.1 修补容器

316

19.4.2 软件更新

317

19.4.3 修补应用程序代码

317

19.4.4 日志

317

19.5 小结

317

第20章 日志和监控

318

20.1 日志最佳实践

319

20.2 指标

319

20.2.1 指标数据类型

320

20.2.2 命名约定

320

20.2.3 存储和查询

322

20.2.4 Grafana

323

20.3 日志记录

326

20.3.1 具有关联ID的分布式跟踪

326

20.3.2 ElasticSearch、Logstash和Kibana

327

20.3.3 Kibana

328

20.4 异常

330

20.5 小结

332

第21章 持续交付

333

21.1 持续交付简介

333

21.1.1 手动部署

334

21.1.2 持续交付的好处

334

21.1.3 持续交付面面观

335

21.1.4 持续交付的过程

337

21.2 容器编排的选项和基础架构

338

21.3 Terraform

339

21.3.1 提供者

340

21.3.2 Terraform配置入口点

341

21.3.3 VPC模块

342

21.3.4 输出变量

346

21.3.5 创建基础架构

348

21.4 应用范例

348

21.4.1 持续部署的工作流程

349

21.4.2 构建

352

21.4.3 测试

353

21.4.4 基准测试

354

21.4.5 静态代码测试

354

21.4.6 集成测试

355

21.4.7 部署

356

21.4.8 冒烟测试

357

21.4.9 监控和预警

357

21.5 小结

359

第22章 使用Go kit框架构建微服务

360

22.1 创建服务

361

22.1.1 测试

361

22.1.2 Go语言中的构造函数

362

22.1.3 使用bcrypt进行Hash处理并验证密码

363

22.2 使用请求和响应对方法调用进行建模

364

22.2.1 Go kit中的端点

365

22.2.2 为服务方法设定终点

366

22.2.3 不同级别的错误

366

22.2.4 将端点包装到服务实现中

367

22.3 使用Go kit实现一个HTTP服务器

368

22.4 Go kit中的gRPC服务器

368

22.5 创建服务器命令

371

22.5.1 使用Go kit端点

373

22.5.2 运行HTTP服务器

373

22.5.3 运行gRPC服务器

373

22.5.4 防止main函数突然终止

374

22.5.5 通过HTTP使用服务

374

22.6 构建一个gRPC客户端

375

22.6.1 使用服务的命令行工具

376

22.6.2 在CLI中解析参数

377

22.7 服务中间件的速率限制

378

22.7.1 Go kit中的中间件

378

22.7.2 速率限制

380

22.8 小结

380

附录 Go语言中的关键字

381


作者介绍:

刘金亮

研究生毕业于北京大学,现任用友集团架构师。曾经参与IBM、Accenture、Capgemini的软件系统咨询和开发项目,对复杂业务系统的架构和设计有丰富的经验,著有《Odoo快速入门与实战》。


出版社信息:

暂无出版社相关信息,正在全力查找中!


书籍摘录:

暂无相关书籍摘录,正在全力查找中!


在线阅读/听书/购买/PDF下载地址:

在线阅读地址:GO微服务实战在线阅读

在线听书地址:GO微服务实战在线收听

在线购买地址:GO微服务实战在线购买


原文赏析:

暂无原文赏析,正在全力查找中!


其它内容:

书籍介绍

随着互联网和软件的大型化、复杂化,研发团队的规模越来越大,运维和研发人员的工作交集越来越多,软件的迭代速度也越来越快。在这个大前提下,微服务模式在大型项目中开始风靡。Go语言因其简洁的语法、高效的开发效率和优秀的性能等诸多天然优势广泛应用于互联网公司。越来越多的高并发应用使用Go语言进行开发。本书以实践的角度全方位介绍如何通过Go语言实现微服务模式。

【本书的主要内容和特色】

面向所有工程师,即便是没有Go语言基础的Java、PHP、Python工程师也可以直接上手使用,书中对Go语言进行了全面精炼的介绍。“给小白的Go语言微服务实战书籍”是本书贯穿始终的写作目的,书中代码注释详细、理论解释形象。

对于微服务模式,书中并未直接给出框架,而是从理论层面入手进行了探讨,让读者“知其然,知其所以然”。

包含大量案例,对于重要的内容都给出了案例及相关分析,且每一部分都有一个案例从0开始分析、构建,指导读者从使用的角度去思考如何活学活用,并在GitHub上提供了可运行的完整代码。

本书自始至终都围绕Go语言、微服务和实战这三大特色,全书从Go语言的基础引入,到Go语言的进阶、微服务的理论,再到最后的微服务实战,都给出了技术实现和实例代码,让有编程基础的读者可以深入浅出地学习和实践。

本书针对Go语言进行微服务开发做了全面细致的介绍,书中内容包括四大部分。

第一部分为Go语言基础(第1~7章),包括Go语言基础语法、Go语言基本特性和Go语言实战项目等内容。

第二部分为Go语言进阶(第8~10章),主要介绍Go语言的并发编程进阶、Go语言Web编程以及综合实战。

第三部分为微服务理论(第11~18章),包括微服务模式的理论基础、微服务的进程间通信、微服务的分布式事务管理、领域驱动设计(DDD)、微服务测试、Docker及ES-CQRS策略。其中,微服务进程间通信重点介绍了gRPC,ES-CQRS策略部分给出了Go语言的实现。

第四部分为微服务实战(第19~22章),这一部分通过实战项目讲解了微服务的生产环境、日志和监控、持续部署等内容。

书中每一部分都提供了示例代码或实战项目,供读者边学习边动手实践,尽量做到让有Go语言基础的人尽快了解、掌握微服务模式。


书籍真实打分

  • 故事情节:4分

  • 人物塑造:8分

  • 主题深度:8分

  • 文字风格:4分

  • 语言运用:4分

  • 文笔流畅:5分

  • 思想传递:6分

  • 知识深度:9分

  • 知识广度:7分

  • 实用性:5分

  • 章节划分:9分

  • 结构布局:9分

  • 新颖与独特:8分

  • 情感共鸣:5分

  • 引人入胜:5分

  • 现实相关:5分

  • 沉浸感:8分

  • 事实准确性:5分

  • 文化贡献:3分


网站评分

  • 书籍多样性:5分

  • 书籍信息完全性:3分

  • 网站更新速度:9分

  • 使用便利性:8分

  • 书籍清晰度:5分

  • 书籍格式兼容性:6分

  • 是否包含广告:6分

  • 加载速度:5分

  • 安全性:8分

  • 稳定性:4分

  • 搜索功能:3分

  • 下载便捷性:5分


下载点评

  • 种类多(265+)
  • 无漏页(528+)
  • 购买多(577+)
  • 格式多(290+)
  • 下载速度快(633+)
  • 值得下载(594+)
  • 三星好评(141+)

下载评价

  • 网友 田***珊: ( 2025-01-18 18:41:09 )

    可以就是有些书搜不到

  • 网友 师***怀: ( 2025-01-02 02:36:17 )

    好是好,要是能免费下就好了

  • 网友 龚***湄: ( 2025-01-18 04:52:22 )

    差评,居然要收费!!!

  • 网友 冷***洁: ( 2024-12-25 17:46:58 )

    不错,用着很方便

  • 网友 习***蓉: ( 2025-01-02 01:26:39 )

    品相完美

  • 网友 常***翠: ( 2024-12-27 07:35:17 )

    哈哈哈哈哈哈

  • 网友 冉***兮: ( 2024-12-21 04:51:09 )

    如果满分一百分,我愿意给你99分,剩下一分怕你骄傲

  • 网友 孔***旋: ( 2025-01-04 19:54:59 )

    很好。顶一个希望越来越好,一直支持。

  • 网友 寿***芳: ( 2025-01-08 18:10:51 )

    可以在线转化哦


随机推荐