gRPC Unary RPC 就是我们所熟悉的客户端发起一次 Request、服务端响应一次 Response,即客户端发送一个请求 message 给服务端,然后再从服务端接收到一个响应 message。Unary RPC 调用将成为你的 API 中最通用的 RPC 调用,它非常适合要传输的结构化数据很小的场景,我们构建 API 时应当首先实现为 Unary RPC,当它的性能出现瓶颈时,才考虑将它改写成 Streaming RPC
gRPC 是谷歌开源的高性能、轻量级 RPC 通信框架,基于 Protocol Buffers 序列化协议进行开发,支持多种语言(C++、Golang、Python、Java 等),本篇只介绍 Golang 的 gRPC 使用。同时,由于 gRPC 支持 HTTP/2 协议,使用二进制帧进行数据传输,还可以为通信双方建立持续的双向数据流,使其在 Android、iOS 等客户端后端服务的开发领域具有良好的前景。gRPC 提供了一种简单的方法来定义服务,同时客户端可以充分利用 HTTP/2 stream 的特性,从而有助于节省带宽、降低 TCP 的连接次数、节省CPU的使用等
如果你不想看如何使用 Docker 和 reflex 实现 Golang 源代码热更新并自动重新编译、运行的原理,可以直接跳到本文的章节 2 如何快速使用
Flask + Vue.js 全栈开发系列的 [最新代码] 会定时更新到本文的 [附件] 中,Github 上的代码只包含前面的部分
第一部分我们手动启动 MySQL、Redis、Elasticsearch、Python、Nginx 等容器,第二部分使用 Docker Compose 来编排我们的服务,非常推荐大家试一下 Docker 容器来运行我们的微型博客应用,到此为止,本系列就全部完结了,感谢大家的关注,接下来将开始 Golang 微服务实战系列,期待您的加入
- 9
-
19640