Open
Description
Besides Producer/Broker/Consumer topology, the Message/Stream communication use case could also apply to broker-less P2P communication. Basically, for the P2P communication, we could identify 4 communication styles:
Type 1. Oneway message/stream
Type 2. Request/Response
Type 3. Request/Stream
Type 4. Duplex stream
Currently the OpenMessaging API put pub/sub should be also able to support Type 1 P2P communication.
One possible way to enhance is to extend the interface SendResult
public interface SendResult {
/**
* The unique message id related to the {@code SendResult} instance.
*
* @return the message id.
*/
String messageId();
}
For example, include a response in the RequestResponseSendResult, include a PeerTopic for the RequestStreamSendResult.