我知道gRPC是为客户端-服务器架构而设计的。服务器提供远程服务,客户端通过调用定义的RPC获得服务。但是,客户端是否也可以定义一个服务,以便其他客户端也可以从该客户端请求服务?
例如,服务器知道每个客户端的位置,并可以通知其他客户端位置信息。在从服务器接收到其他客户端的位置之后,客户端现在可以直接调用由其他客户端提供的服务。
gRPC能做到吗?谢谢!
发布于 2020-08-28 03:59:00
是的,这是可能的。
术语“客户端”和“服务器”在此上下文中是重载的,最好将其视为(存根)调用方和(实现)接收方。客户机和服务器可以是相同的进程,但这样就不需要gRPC的复杂性了。
并不禁止某些实体同时充当调用方(“客户端”)和接收方(“服务器”)。这种情况通常出现在对等网络和微服务中,其中一些原始客户端调用某个服务,该服务(充当客户端)然后调用各种其他服务……
https://stackoverflow.com/questions/63622018
复制相似问题