第 7 章 开箱即用的功能
编写生产就绪的 API 比仅仅发送请求和接收响应要复杂得多,gRPC 提供了比我们之前看到的简单通信模式更多的功能。在本章中,我们将探讨一些重要的功能,帮助我们使 API 更加健壮、高效和安全。
本章将涵盖以下主题:
-
处理错误、取消和截止日期
-
发送 HTTP 头信息
-
加密数据传输
-
使用拦截器提供额外的逻辑
-
请求负载均衡到不同的服务器
到本章结束时,我们将了解使用 gRPC 时可直接使用的最重要的功能。
技术要求
在本章中,您将找到相关的代码,位于附带的 GitHub 仓库中的 chapter7
文件夹( https://github.com/PacktPublishing/gRPC-Go-for-Professionals/tree/main/chapter7 )。
在最后一节中,我将使用 Kubernetes 来演示客户端负载均衡。我假设您已经安装了 Docker 并且拥有一个 Kubernetes 集群。您可以以任何方式完成这一操作,但我提供了一个 Kind 配置文件( https://kind.sigs.k8s.io/ ),可以轻松地在本地启动一个集群。
此配置文件位于 chapter7
文件夹下的 k8s
文件夹中,名为 kind.yaml
。
安装 Kind 后,您可以通过以下命令创建集群:
$ kind create cluster --config k8s/kind.yaml
如果您不再需要集群,可以通过以下命令删除它:
$ kind delete cluster