rabbitmq-stream-go-client
rabbitmq-stream-go-client copied to clipboard
Basic primitives to interact with Streams
Description
The current implementation of stream.Producer
and stream.Consumer
use stream.Coordinator
. This coordinator does a lot of things, like keeping track of the IDs used for communication, reconnection, keeping a list of created producer/consumers... It is a lot and it is very opinionated. It is the central piece to publishing and consuming messages, and it is very hard to change this code because it affects many different pieces.
Proposed solution
- Create a very simple
Producer
, with low level functions to send messages and receive responses - Create a very simple
Consumer
, same as above - Use a dedicated connection socket for each created producer/consumer