Hi,
I'm implementing a distributed system and it seems that gRPC would be a great fit for my project. However I have quite simple problem: can a single CompletionQueue be used both for listening for incoming RPC calls to a local server, and for responses to RPC calls initiated from the process? It would seem to make sense, but I want to make sure it's supported. I would like to avoid having separate queues, and doing active polling on them. My system is completely decentralised, and I need to have each node both send and respond to requests from other nodes simultaneously.
My communication protocol is divided into three phases:
1. Node A picks another one (B) in a partially random fashion and sends a small request to it
2. Node B responds with requested data and also requests some additional information from A
3. Node A responds with the information
However, since there's no hierarchy, both A and B should be able to start this cycle.
Thanks,
Adam Paszke