2. RELIABILITY PATTERN OVERVIEW
• Even in the world of cloud computing and systems which has
zero tolerance on downtime, network and environmental
capability does pose a threat in providing zero message loss
for the clients.
• For a business critical application that needs high availability
and zero message lost, it is important that every messages that
was received by the system is either processed or properly
stacked in to re-processing queues
4. SOLUTION USING VM PERSISTED QUEUES
• Messages that to be delivered can be stored in VM queue
before delivering to the transactional context or business flow.
• VM Queue will ensure that message will only be deleted if the
message is committed to the next system.
• This ensure that trivial network issues will not cause the
message to be lost in the sequential flow.
6. • The message will remain in the queue till the message is
accepted and committed by the following system.
• VM Queue can be persisted in mule cloudhub using the Persist
Queues check box during the cloud deployment.
7. VM CONFIGURATION IN ANYPOINT STUDIO
• Global Connector Configuration
<vm:connector name="PersistsMessage" validateConnections="true" doc:name="VM">
<vm:queue-profile>
<default-persistent-queue-store/>
</vm:queue-profile>
</vm:connector>
• Sends Message to a Queue and Persists.
<vm:outbound-endpoint exchange-pattern="one-way" path="/dispatch" connector-
ref="PersistsMessage" doc:name="PersistReq"/>
• Dispatches Persisted Messages.
<vm:inbound-endpoint exchange-pattern="one-way" path="/dispatch" connector-
ref="PersistsMessage" doc:name="DisptachPersistedReqs"/>