Search code examples
azureazure-service-fabricazureservicebusazure-eventhub

Azure Service Fabric routing


I would like to get some recommendation, for designing a routing of IoT messages in Azure.

I have following scenario: Senors sending messages to Azure IoT Hub in Google Protobuf format. Depending of the type of a message, I want to route the message to different applications inside a service fabric.

My current approach is to use a service fabric application to receive all messages from the IoT hub, parse the protobuf message, send the message depending on their type (attribute inside the protobuf) to an type-specific Azure event hub. Now the applications fetches the messages from their "own" event hub and process the messages.

I'm not sure if this is the best approach. I don't like the fact, to have one event hub for each type of message. Service Bus Topics are probably not an option, because I have a lot of messages (~30k per second). Do I realy need a event hub, to decoupling this process, or does it make sense, to send the messages from the "routing application" direct to the different "type applications"?

What do you think?

Regards, Markus


Solution

  • If you really need high performance you should take a look at IoT Hub and Event Hubs. Azure Event Hubs is a highly scalable data streaming platform and event ingestion service capable of receiving and processing millions of events per second. Event Hubs can process and store events, data, or telemetry produced by distributed software and devices. Data sent to an event hub can be transformed and stored using any real-time analytics provider or batching/storage adapters.

    In other hand if you need only 30k messages per second you can go with Premium Messaging.

    Comparison of Azure IoT Hub and Azure Event Hubs

    Premium Messaging: How fast is it?

    What is Event Hubs?