Active Messages processing
- Updated on 29 Apr 2019
- 5 minutes to read
The real-world domains require real messaging, that means supporting features that involve compute and processing behind the scenes on behalf of the service. That’s where Azure Service Bus (ASB) service shines. The features it provides are genuinely impressing. Some of those are:
- Transactional processing
- Message ordering
- Expiration (TTL)
- Duplicate detection
- and more
The service goes beyond simple queueing and exhibits all the necessary features commonly found in the enterprise line of business application and systems.
In Serverless360, execute queries to retrieve messages from Queues in 'peek lock' mode. When the query is executed, Serverless360 retrieves the list of messages in peek lock mode along with necessary message information such as sequence number, size, label, enqueued time, expiry time, message details and properties. It is possible to retrieve both active and dead letter messages in Service Bus Queues and Topic Subscriptions.
Message Processing on Service Bus Queues
Message processing capability in Serverless360 supports processing of active messages in addition to processing dead letter messages. Execute queries to retrieve active messages from Queues in both 'peek lock' and 'defer' mode. In addition, the service call will retrieve other information related to the message such as message id, sequence number, size, label, error reason, enqueued time, expiry time, message details and properties.
Different modes of message retrieval possible on Service Bus Queues and Topic Subscriptions in Serverless360.
|Message Type / Mode||Peek Lock||Deferred|
|Active Messages||In this mode of retrieval, the messages are peeked. It does not increase the delivery count of the message.
||Retrieving messages in this mode will move the message to a 'Deferred' queue and it can be processed later. This process increases the delivery count of the message.
Below is an illustration to process the active messages in the Service Bus Queue/ Topic Subscription associated with a Serverless360 Composite Application.
If the requirement is to purge all active messages in a Service Bus Queue/ Topic Subscription to completely clear its contents, it’s quite straight forward using Serverless360. Below is an illustration on the inline Purge Messages activity to purges either all or specific count of messages from a Service Bus Queue/ Topic Subscription.
Regenerate/Modify or Edit a message ID
When you try to resubmit a message to a Queue/ Topic Subscription with 'Enable Duplicate Detection' property checked, Serverless360 will help preventing the message from being lost by prompting you to regenerate the message id to be unique. Choose between the options, either assign a new GUID as Message Ids or edit to set custom message ids. for e.g.: invoice/201#/####.
Serverelss360 offers out of box message processing capabilities on Service Bus Queues and Topics Subscriptions. There could be business scenarios those demand to retain a copy of a Service bus messages being processed. Hence the back up to Storage blob capability was introduced.
In Serverless360, it is possible to back up the Service Bus messages being processed to a Storage blob associated in the same Composite Application, in which the Service Bus entity exists. It is possible to have multiple Storage Blob Containers associated in a Composite Application. The decision on back up target can be made in run time while performing message processing.
Below is an illustration on message back up to associated Storage blob while processing active messages,
On successful resubmission the success notification will contain the blob URI where the backed-up message can be accessed from. Even in case of failure in resubmission the message will be backed-up. This behaviour holds good for of all the dead letter management scenarios, delete, repair and resubmit and resubmit.
Govern and Audit on Message Processing
When back up is enabled on a message processing action, the back-up URI will be captured in the Governance & Audit record corresponding to this action. This detail can also be exported to Excel or PDF format using the export capability in Governance & Audit.
These Storage blobs to which the messages had been backed-up can also be monitored from Serverless360 itself. Refer the article on ‘Monitoring Storage Accounts’ for more details