【发布时间】:2023-03-27 14:16:01
【问题描述】:
我通过以下示例在此处寻找带有客户端侦听器的示例,用于服务器端流式传输 - https://grpc.io/docs/languages/java/basics/
我已经按照文档在客户端和服务器上配置了 keep-alive 配置 - https://github.com/grpc/grpc/blob/master/doc/keepalive.md
所有示例都表明,当向服务器发出请求时,服务器将以异步或一元模型响应,或者客户端可以与新请求聊天。每次请求都必须发送到服务器进行响应。 Connection 的存活时间要长得多;这很好。
问题: 客户端是否可以在不使用 BIDI(双向)模型的情况下发送一个请求并无限期地接收来自服务器的响应?在这种情况下,它会有点基于事件,只要服务器上有可用数据,它将继续发送而不需要进一步的请求。同样,这种通信是单播,而不是广播;这意味着每个连接(用户)都是唯一的,可以根据用户的数据做出响应。
不确定,但一种方法可能是 - 服务器在某处的缓存中保持请求对象处于活动状态并保持响应?客户端是否必须使用轮询循环来无限期地监听响应?
期待可以解决此问题的示例。
【问题讨论】:
标签: android grpc mobile-application grpc-java