Can we only have 1 worker since the queue is set up as exclusive?
Ideally we would have multiple instances of the workers processing the messages. Also, if durable is set to false, there is no way to guarantee we will get the full set of messages if the broker crashes.
It should be 1 worker for the queue; then you can move the processing to multiple threads on your side. Just make sure that the messages from the same match are processed in the same thread to ensure match message concurrency. If the broker crashes, you can do a recovery after you successfully re-establish the connection to the feed. Please check the recovery process in our documentation. You can have more queues (max. 10 across all connections), for example, to split by high- and low-priority messages, or to split by prematch and live.