将http restful接口访问转换成grpc访问。
https://github.com/generalzgd/grpc-http-proxy
https://github.com/generalzgd/protoc-gen-grpc-httpgw
https://github.com/generalzgd/grpc-tcp-gateway-proto
protoc -Iiproto --go_out=plugins=grpc:./iproto ./iproto/backendsvr.proto
protoc -Iiproto --grpc-tcpgw_out=logtostderr=true:./iproto ./iproto/httpgate.proto
protoc -Iiproto --grpc-httpgw_out=logtostderr=true:./iproto ./iproto/httpgate.proto
- 客户端不用关心后端服务有哪些,只需知道网关地址。根据restful路径自动路由到后端服务并返回对应数据。
- 支持双向数据发送
- 不支持服务端主动下发消息给客户端
- 同时支持protobuf和json两种协议格式
- 对比grpc-ecosystem/grpc-gateway
- ecosystem需要为每个后端服务都注册一个网关地址和端口,客户端需要关心对应服务的网关和端口
- 支持路由(restful路径)转发给不同的后端服务
- grpc转发支持后端服务发现和均衡负载