想了几种办法,还是思路不是很清晰,各位大佬给个思路呗。。。
1
qW7bo2FbzbC0 2021-07-14 10:35:59 +08:00
rpc 包含 http,你说的那种是不是 grpc,dubbo 那种?把 http 请求包一包不就是本地方法了吗,只是序列化与传输方式不同而已
|
2
vchroc 2021-07-14 10:38:48 +08:00
关键词:泛化调用
|
3
hejw19970413 OP 确实是 grpc 主要的问题就是用 pd 定义后,走后面的服务请求需要 pd 文件内的已经定义的数据格式,如果程序自动获取好像自动获取不到。。
|
4
renyijiu 2021-07-14 10:53:27 +08:00
|
5
Cy1 2021-07-14 11:09:24 +08:00
pd 是啥。。
|
6
hejw19970413 OP @renyijiu 感谢感谢,我去好好看看
|
7
hejw19970413 OP @Cy1 一种数据传输格式,跟 json 和 xml 是一类产品
|
8
Cy1 2021-07-14 11:23:21 +08:00
你说的怕不是 pb,protobuf ?
|
9
hejw19970413 OP @Cy1 是
|
10
Cy1 2021-07-14 11:26:19 +08:00
我们内部是在 SpringMVC 是基础上做的,做一个特定路径如 '/url' 的 MappingHandler,
在这个 handler 里面做自己的 pb 分发,rpc 也是这样做的 |
11
hejw19970413 OP @Cy1 每加一个路由都是自己做的转发是吗?
|
12
Cy1 2021-07-14 11:53:53 +08:00
自己定义一套类似于 @RestController,@RequestMapping 的 @MessageController,@MessageMapping,然后一个 SpringMVC 的一个特定的 HandlerMethod 内实现类似于 SpringMVC 的整个链路的流程,参考 SpringMVC 里面 HandlerMapping,HandlerChain,HandlerAdapter 的设计,做好自己的分发以及 Request,Response 的 pb 的序列化和反序列化就行。
最终用起来的效果类似于这样 @MessageMapping(PBMessageType.ADMIN_RESET_PASSWORD) PBAdmin resetPassword(PBResetAdminPasswordReq req) { ...... } |
13
cloverstd 2021-07-14 12:47:45 +08:00
|
14
Judoon 2021-07-14 13:01:13 +08:00
http://apisix.apache.org/
直接上全能型网关 |
15
labulaka521 2021-07-14 16:28:39 +08:00
我们这里使用 envoy 来实现的 内部是 grpc 通信,外部进来通过 envoy 转
|
16
hejw19970413 OP 其实是有些定制化的需要,更想要的是一种插件的式的协议转换,现在就是两种选择,第一种就是网关自己写对前端请求的粗力度的接口,然后根据不同的业务线进行拆分成不同的网关。第二种就用一些常见的网关系统对请求进行二次的下沉。所以想找找别人的网关是怎么做的。。。
|
17
Lonenso 2021-07-14 19:20:48 +08:00
jsonrpc
|
18
young1lin 2021-07-14 19:25:02 +08:00
你对 RPC 有个错误的认知了吧? RPC 全称 Remote procedure call,其实现,HTTP 、gRPC 都是可以的啊
|
19
wm5d8b 2021-07-15 07:03:47 +08:00 via Android
HTTP/2+protobuf,和 grpc 在通信效率上有哪些差异?
|
20
hejw19970413 OP @wm5d8b 额,可能我没太说明白,当前的场景是 用 grpc 框架 从前端到网关这里是 http1.1 那么从网关到最终的服务都是使用的 grpc,所以这里就是 从 http1.1 到 rpc 的
|
21
hejw19970413 OP @young1lin 嘿呀,我只不过是个小学生,想向问问各位哥哥姐姐的,您项目是怎么样的流程能大致说说吗
|
22
zjyl1994 2021-07-15 14:49:24 +08:00
|
23
jinzhongyuan 2021-07-15 19:01:01 +08:00
@Cy1 他这个简称,是业界统一的吗??
|
24
Cy1 2021-07-16 09:43:02 +08:00
@jinzhongyuan 什么简称
|
25
NCE 2021-07-19 19:21:10 +08:00
网上有现成的方案吧? gg 下 gateway rpc
|