成功加入购物车

去购物车结算 X
智文星空图书专卖场
  • Go微服务实战

Go微服务实战

举报

新华正版全新 七天无理由 急速发货

  • 出版时间: 
  • 装帧:    平装
  • 开本:    16开
  • ISBN:  9787111674122
  • 出版时间: 
  • 装帧:  平装
  • 开本:  16开

售价 56.02 6.3折

定价 ¥89.00 

品相 全新

优惠 满包邮

优惠 满减券
    运费
    本店暂时无法向该地区发货

    延迟发货说明

    时间:
    说明:

    上书时间2024-03-27

    数量
    库存5
    微信扫描下方二维码
    微信扫描打开成功后,点击右上角”...“进行转发

    卖家超过10天未登录

    • 商品详情
    • 店铺评价
    手机购买
    微信扫码访问
    • 货号:
      1202302018
      商品描述:
      作者简介


      目录
      前言

      部分 Go语言基础

      章 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

      0章 综合案例 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

      第三部分 微服务理论

      1章 微服务 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

      2章 微服务化策略 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

      3章 微服务中的进程间通信 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

      4章 微服务中的分布式事务管理 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

      5章 领域驱动设计的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

      6章 微服务中的测试 258

      16.1 测试金字塔 258

      16.2 单元测试 260

      16.3 依赖注入和mock测试 263

      16.4 行为驱动开发 266

      16.5 使用Docker Compose测试 272

      16.6 小结 275

      7章 微服务运行环境: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

      8章 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

      第四部分 微服务实战

      9章 生产环境的微服务安全 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


      内容摘要
      本书针对Go语言进行微服务开发做了全面细致的介绍,书中内容包括四大部分。部分为Go语言基础(~7章),包括Go语言基础语法、Go语言基本特性和Go语言实战项目等内容。第二部分为Go语言进阶(第8~10章),主要介绍Go语言的并发编程进阶、Go语言Web编程以及综合实战。第三部分为微服务理论(1~18章),包括微服务模式的理论基础、微服务的进程间通信、微服务的分布式事务管理、领域驱动设计(DDD)、微服务测试、Docker及ES-CORS策略。其中,微服务进程间通信重点介绍了gRPC,ES-CORS策略部分给出了Go语言的实现。第四部分为微服务实战(9~22章),这一部分通过实战项目讲解了微服务的生产环境、日志和监控、持续部署等内容。书中每一部分都提供了示例代码或实战项目,供读者边学习边动手实践,尽量做到让有Go语言基础的人尽快了解、掌握微服务模式。

      配送说明

      ...

      相似商品

      为你推荐

    本店分类
    孔网啦啦啦啦啦纺织女工火锅店第三课

    开播时间:09月02日 10:30

    即将开播,去预约
    直播中,去观看