请教一个 rpc 方案,客户端同服务端建立连接后,服务端如何同步调用客户端方法
已知客户端知晓服务端地址,服务端无法主动同客户端建立连接。
楼主想到的一个方案是,rpc 建立连接后,可以采用 Bidirectional streaming 的方式,这样服务端和客户端可以双向发消息。但是这样貌似是全异步的,调用方通过服务端调用的时候需要在消息里标记一个消息 id,然后阻塞等待,客户端收到消息后,处理后返回 response。服务端收到 response 后通过消息 id 找到调用方。
有没有什么更好的办法,处理起来就像是客户端同步调用服务端方法一样顺滑。
1
ym1ng 2019-12-18 18:52:56 +08:00
看这描述感觉像是要搞远控(逃~
|
2
catror 2019-12-18 19:00:55 +08:00 via Android
自己封装一下就好了,写个 RequestManager,实现请求的等待和唤醒
|