I'm learning the messaging system and got confused by those terminology.
All the messaging system below provides loose coupling between services with different sets of features.
queue
- FIFO, pulling mechanism, 1 consumer each queue but any number of producers?
message bus
- pub/sub model, any number of consumers with any number of producers processing messages? Is Azure Service Bus
an implementation of message bus
?
event bus
- pub/sub model, any number of consumers with any number of producers processing events?
Do people use message bus
and event bus
interchangeably as far as terminology goes?
What are the difference between events and messages? Are those just synonyms in this context?
event hub
- pub/sub model, partition, replay, consumers can store events in external storage or close to real-time data analysis. What exactly is event hub?
event grid
- it can be used as a downstream service of event hub. What does it exactly do that event hub
doesn't do?
Can someone provide some historical context as how each technology evolve to another each tied with some practical use cases?
I've found message bus vs. message queue helpful