Skip to main content

Messaging Service Comparison

Event vs. Message​

  • Event - is a lightweight notification of a condition or a state change.

    • The event data has information about what happened but doesn't have the data that triggered the event.
    • The published has no expectation about how the event is handled.
  • Message - is raw data produced by a service to be consumed or stored elsewhere.

    • The message contains the data that triggered the message pipeline.
    • The published has an expectation about how the consumer handles the message.

Services​

ServicePurposeTypeWhen to use
Event GridReactive programmingEvent distribution (discrete)React to status changes
Event HubsBig data pipelineEvent streaming (series)Telemetry and distributed data streaming
Service BusHigh-value enterprise messagingMessageOrder processing and financial transactions

Storage Queue vs. Service Bus​

CriteriaStorage queuesService Bus queues
Message sizeUp to 64KBCan exceed 64KB
Queue sizeCan go over 80GBUp to 80GB
Delivery guaranteeAt-Least-OnceAt-Least-Once or At-Most-Once
Ordering guaranteeNoYes (FIFO)
Atomic operation supportNoYes
Receive behaviorNon-blockingBlocking with or without a timeout
Push-style APINoYes
Exclusive access modeLease-basedLock-based
Lease/Lock duration30 seconds by default, 7 days maximum30 seconds by default
Batched receiveYesNo
Batched sendNoYes
AMQP 1.0 supportNoYes