Azure IoT Hub、Storage Queue、Service Bus、Event Hub、Event Grid
IoT
- IoT Hub:IaaS,可在您的 IoT 應用程式與其所管理裝置之間進行高度安全兼可靠的通訊。
- Collect IoT Message
- Connect Other Services
- IoT Central:SaaS,大規模連線、監視並管理您的物聯網 (IoT) 資產。
- Collect IoT Message
- Master/Process
Queue
- Storage Queue:單一Message size上限64KB
- Service Bus:
- Service Bus queue,單一Message size上限 Standard tier: 256KB,Premier tier: 1MB
- Service Bus topic,處理message前做filter篩選
- Event Hub:處理巨量Message
- Event Grid:能夠收集並處理Message
Service | Purpose | Type | When to use |
---|
Event Grid | Reactive programming | Event distribution (discrete) | React to status changes |
Event Hubs | Big data pipeline | Event streaming (series) | Telemetry and distributed data streaming |
Service Bus | High-value enterprise messaging | Message | Order processing and financial transaction |
Storage queues and Service Bus queues - compared and contrasted
https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-azure-and-service-bus-queues-compared-contrasted
Choose between Azure Queue services – Queue Storage, Service Bus Queue, Service Bus Topics
https://ramanisandeep.wordpress.com/2020/06/11/choose-between-azure-queue-services-queue-storage-service-bus-queue-service-bus-topics/
Choose Service Bus Topics if
you need multiple receivers to handle each message
Choose Service Bus queues if
You need an At-Most-Once delivery guarantee.
You need a FIFO guarantee.
You need to group messages into transactions.
You want to receive messages without polling the queue.
You need to provide a role-based access model to the queues.
You need to handle messages larger than 64 KB but less than 256 KB.
Your queue size will not grow larger than 80 GB.
You would like to be able to publish and consume batches of messages.
Queue storage isn’t quite as feature-rich, but if you don’t need any of those features, it can be a simpler choice. In addition, it’s the best solution if your app has any of the following requirements.
Choose Queue storage if
You need an audit trail of all messages that pass through the queue.
You expect the queue to exceed 80 GB in size.
You want to track progress for processing a message inside of the queue.
A queue is a simple, temporary storage location for messages sent between the components of a distributed application. Use a queue to organize messages and gracefully handle unpredictable surges in demand.
Summary
Use Storage queues when you want a simple and easy-to-code queue system. For more advanced needs, use Service Bus queues. If you have multiple destinations for a single message, but need queue-like behavior, use topics.
Azure IoT中樞
Azure IoT Central
Choose between Azure messaging services - Event Grid, Event Hubs, and Service Bus