上文给大家具体介绍了在 Apinto 上实现 HTTP
与 gRPC
的协定转换的根本内容,本篇咱们将持续解说如何在 Apinto-Dashboard 中进行配置。
配置 Apinto
Apinto 上咱们提供了可视化界面工具 Apinto-Dashboard,以升高初学者的应用老本,以下操作均在 Apinto-Dashboard 中进行配置。
1. 在全局插件中新建 http_to_grpc 插件
2. 创立 gRPC 服务
在这里,咱们配置 gRPC
服务的相干信息,咱们能够配置多个动态负载地址,这里咱们填写了 127.0.0.1:9001。
3. 创立 http 路由,绑定 grpc_demo 上游服务
4. 在路由中绑定 http_to_grpc 插件
因为 gRPC
服务端示例中,咱们开启了 gRPC
反射,因而,在配置插件时,开启 反射按钮 即可
注:
- 当服务名称不填时,则默认应用
HTTP
申请门路的第一个/
和第二个/
之间的值作为服务名; - 当办法名称不填时,则默认应用
HTTP
申请门路的第二个 / 和第三个 / 之间的值作为服务名; - 即,若
HTTP
申请门路上/Service.Hello/Hello
,则此时服务名称为Service.Hello
,办法名称为Hello
。
对于 Protobuf 编码器
若 gRPC
未开启反射,咱们须要先新建一个Protobuf
编码器,绑定 http_to_grpc
插件时,绑定对应的编码器 ID
即可,具体步骤如下:
1. 创立 Protobuf 编码器
2. 在路由中绑定 http_to_grpc 插件
填写完后提交即可。
验证协定转换申请
1. 启动 gRPC 服务器
2. 申请 Service.Hello 服务的 Hello 办法
在上文中,咱们定义了 Hello 办法的性能:
- 将
HelloRequest
中的name
字段通过HelloResponse
的msg
字段封装成hello,%s
的后果返回; - 将申请的 Header 作为 gRPC 响应的 Trailer 头部返回。
调用后果如下:
欢送到 GitHub 体验 👉:https://github.com/eolinker/apinto
写在最初
目前 Apinto 及其周边我的项目曾经开源,咱们心愿通过 Apinto 弱小的插件拓展能力,用户可像乐高积木一样依据须要自行拓展 Apinto 的插件,以满足不同的业务市场需求。
Apinto 目前属于萌芽阶段,咱们心愿汇合宽广开源爱好者的力量,与大家一起探讨计划,承受大家的批评指正,一起将产品打磨欠缺,做下一个端与端间的 Traffic Middleware。
这是一个凋谢和踊跃的我的项目,咱们诚挚地邀请您一起参加到咱们的我的项目开源工作中。 每一个奉献都是有意义的,包含但不限于:
- 查找 bugs,获得性能上的晋升
- 帮忙欠缺文档,提供用户操作体验
- 提交你们的 issue,让咱们晓得您的奇思妙想
- 参加自定义插件的开发,丰盛 apinto 的能力
欢送各位开源爱好者参加到 Apinto 我的项目中,和咱们一起为开源事业奉献本人的力量!
咱们心愿失去您的关注~
👉 Github: https://github.com/eolinker/apinto