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:
parent
0d7ddae582
commit
cfe7fda1e2
@ -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扩展是一个较大的主题,感兴趣的读者可以自行参考相关文档。
|
||||
|
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user