1
0
mirror of https://github.com/chai2010/advanced-go-programming-book.git synced 2025-05-24 04:22:22 +00:00

ch4: 完善

This commit is contained in:
chai2010 2018-08-17 22:44:08 +08:00
parent 0d7ddae582
commit cfe7fda1e2
2 changed files with 11 additions and 2 deletions

View File

@ -276,6 +276,6 @@ $ protoc -I. \
然后会生成一个hello.swagger.json文件。这样的话就可以通过swagger-ui这个项目在网页中提供REST接口的文档和测试等功能。
## 4.6.3 NGINX
## 4.6.3 Nginx
最新的NGINX对GRPC提供了深度支持。我们可以通过NGINX将后端多个GRPC服务聚合到一个NGINX服务。同时NGINX也提供了为同一种GRPC服务注册多个后端的给你这样可以轻松实现GRPC负载均衡的支持。NGINX的GRPC扩展是一个较大的主题感兴趣的读者可以自行参考相关文档。
最新的Nginx对GRPC提供了深度支持。我们可以通过Nginx将后端多个GRPC服务聚合到一个Nginx服务。同时Nginx也提供了为同一种GRPC服务注册多个后端的给你这样可以轻松实现GRPC负载均衡的支持。Nginx的GRPC扩展是一个较大的主题感兴趣的读者可以自行参考相关文档。

View File

@ -3,6 +3,8 @@
grpc子包中还提供了一个名为reflection的反射包用于为grpc服务提供查询。reflection包中只有一个Register函数用于将grpc.Server注册到反射服务中。
## 4.8.1 服务列表
reflection包文档给出了简单的使用方法
```go
@ -35,6 +37,8 @@ grpc.reflection.v1alpha.ServerReflection
其中`-plaintext`参数表示跳过TLS证书验证流程list子命令表示列出所有的服务。从输出可以发现出了我们实现的HelloService服务外还有一个ServerReflection服务。ServerReflection服务就是reflection包注册的反射服务。
## 4.8.2 服务的方法列表
继续使用list子命令还可以查看HelloService服务的方法列表
```shell
@ -78,6 +82,9 @@ HelloService.HelloService is a service:
可以查看每个方法输入参数和返回值对应的类型。
## 4.8.3 类型信息
describe子命令也可以查看参数HelloService.String类型的信息
```shell
@ -111,6 +118,8 @@ message String {
}
```
## 4.8.4 调用方法
在获取GRPC服务的详细信息之后就可以json调用GRPC方法了
```shell