Skip to main content

Events/Messaging Questions

Message Brokers

Do I need to process multiple tasks concurrently?

  • Message brokers allow for multiple tasks to be processed in parallel, allowing for increased efficiency and scalability.

Is scalability an important factor in my application?

  • Message brokers provide the ability to scale up the application to accommodate more users or tasks.

Do I need to ensure message delivery and reliability?

  • Message brokers provide reliable delivery of messages, ensuring that messages are delivered and processed correctly.

Do I need to support asynchronous communication?

  • Message brokers provide the capability to support asynchronous communication, allowing for message processing to be done at a later time.

Do I need to handle message transformation?

  • Message brokers provide the ability to transform messages into different formats, allowing for easier integration with other systems.

Do I need to support message routing and filtering?

  • Message brokers provide the capability to route and filter messages, allowing for more efficient message processing.

Do I need to store messages in the event of an outage?

  • Message brokers provide the ability to store messages in the event of reading an outage, ensuring that messages are not lost.

Do I need to support message queuing?

  • Message brokers provide the ability to queue messages, ensuring that messages are processed in a timely manner.

Do I need to support multiple languages?

  • Message brokers provide the capability to support multiple languages, allowing for applications to be developed in multiple languages.

Do I need to support message logging?

  • Message brokers provide the ability to log messages, allowing for better tracking and debugging of applications.
ReasonMessage BrokerEvent BusBothNone
Publish and subscribe messages
Route messages to multiple destinations
Scale message processing for multiple consumers
Store messages for later processing
Send messages to multiple consumers
Publish and subscribe to events
Send messages to a single consumer
Send a message and then receive a response
Guarantee message delivery
Process messages in real time
Guarantee message ordering
Manage message routing
Store messages in a queue
Maintain message state
Process messages asynchronously
guarantee message delivery within a certain time frame
Process messages in parallel
Distribute messages to multiple hosts
Send a response back to the sender
Send messages with low latency
Process messages in a distributed fashion
Process messages with minimal configuration
Need to transfer large files
Need to stream data in real time
Need to build a web application
Need to store data in a database
Need to make a phone call