资源详情

gRPC与云原生应用开发 以Go和Java为例(图灵出品)

gRPC与云原生应用开发 以Go和Java为例(图灵出品)-电子书下载


作者: 卡山·因德拉西里(Kasun Indrasiri)/丹尼什·库鲁普(Danesh Kuruppu)
出版社: 人民邮电出版社
副标题: 以Go和Java为例
原作名: gRPC: Up and Running: Building Cloud Native Applications with Go and Java for Docker and Kubernetes
译者: 张卫滨
出版年: 2021-1
页数: 180
定价: 69.00
装帧: 平装
丛书: 图灵程序设计丛书
ISBN: 9787115554987

下载次数:1


本站推荐

书籍资料

  • 内容简介
  • 作者介绍
  • 书籍目录

本书全面介绍了gRPC,可作为终极指南,用于gRPC应用程序开发周期的各个阶段。本书的主要内容包括gRPC的基础知识;gRPC与常规进程间通信技术的区别;gRPC的通信模式、底层原理,以及一些非常重要的高级特性,如拦截器、截止时间、错误处理、元数据、多路复用、负载均衡等。此外,本书还介绍了如何使用Go语言和Java语言构建gRPC应用程序并使其在生产环境中运行,也讲解了gRPC如何与Docker和Kubernetes协作,以及其生态系统中的其他内容。本书广泛使用Go语言和Java语言编写代码示例,帮助读者掌握每个概念。

卡山·因德拉西里(Kasun Indrasiri)
WSO2公司集成架构总监,Apache PMC成员,拥有丰富的微服务架构经验,组建了旧金山湾区的大型微服务Meetup活动,另著有Microservices for the Enterprise。
丹尼什·库鲁普(Danesh Kuruppu)
WSO2公司高级软件工程师,曾带领团队将gRPC集成到开源云原生编程语言Ballerina中,在gRPC社区中十分活跃。

前言 xi
第1章gRPC入门 1
1.1gRPC的定义 2
1.1.1服务定义 3
1.1.2gRPC服务器端 5
1.1.3gRPC客户端 6
1.1.4客户端–服务器端的消息流 7
1.2进程间通信技术的演化 7
1.2.1传统的RPC 7
1.2.2SOAP 7
1.2.3REST 8
1.2.4gRPC的起源 9
1.2.5选择gRPC的原因 9
1.2.6gRPC与其他协议的对比:Thrift和GraphQL 11
1.3现实世界中的gRPC 13
1.3.1Netflix 13
1.3.2etcd 14
1.3.3Dropbox 14
1.4小结 14
第2章开始使用gRPC 15
2.1创建服务定义 16
2.1.1定义消息类型 17
2.1.2定义服务类型 18
2.2实现 20
2.2.1开发服务 21
2.2.2开发gRPC客户端 29
2.3构建和运行 33
2.

.1构建Go服务器端应用程序 33
2.3.2构建Go客户端应用程序 33
2.3.3运行Go服务器端应用程序和客户端应用程序 34
2.3.4构建Java服务器端应用程序 34
2.3.5构建Java客户端应用程序 34
2.3.6运行Java服务器端应用程序和客户端应用程序 35
2.4小结 35
第3章gRPC的通信模式 37
3.1一元RPC模式 37
3.2服务器端流RPC模式 40
3.3客户端流RPC模式 42
3.4双向流RPC模式 45
3.5使用gRPC实现微服务通信 50
3.6小结 52
第4章gRPC的底层原理 53
4.1RPC流 53
4.2使用protocolbuffers编码消息 55
4.3基于长度前缀的消息分帧 60
4.4基于HTTP/2的gRPC 61
4.4.1请求消息 62
4.4.2响应消息 64
4.4.3理解gRPC通信模式中的消息流 66
4.5gRPC实现架构 68
4.6小结 69
第5章gRPC:超越基础知识 71
5.1拦截器 71
5.1.1服务器端拦截器 72
5.1.2客户端拦截器 76
5.2截止时间 79
5.3取消 82
5.4错误处理 83
5.5多路复用 86
5.6元数据 89
5.6.1创建和检索元数据 89
5.6.2发送和接收元数据:客户端 90
5.6.3发送和接收元数据:服务器端 92
5.6.4命名解析器 93
5.7负载均衡 94
5.7.1负载均衡器代理 94
5.7.2客户端负载均衡 95
5.7.3压缩 97
5.8小结 98
第6章安全的gRPC 99
6.1使用TLS认证gRPC通道 99
6.1.1启用单向安全连接 100
6.1.2启用mTLS保护的连接 103
6.2对gRPC调用进行认证 107
6.2.1使用basic认证 107
6.2.2使用OAuth2.0 112
6.2.3使用JWT 115
6.2.4使用基于令牌的谷歌认证 116
6.3小结 117
第7章在生产环境中运行gRPC 119
7.1测试gRPC应用程序 119
7.1.1测试gRPC服务器端 119
7.1.2测试gRPC客户端 121
7.1.3负载测试 122
7.1.4持续集成 123
7.2部署 123
7.2.1部署到Docker上 123
7.2.2部署到Kubernetes上 125
7.3可观察性 130
7.3.1度量指标 131
7.3.2日志 138
7.3.3跟踪 138
7.4调试和问题排查 142
7.5小结 143
第8章gRPC的生态系统 145
8.1gRPC网关 145
8.2gRPC的HTTP/JSON转码 152
8.3gRPC服务器端反射协议 152
8.4gRPC中间件 155
8.5健康检查协议 157
8.6gRPC健康探针 159
8.7其他生态系统项目 160
8.8小结 161
关于作者 162
关于封面 162