Search code examples
mulecloudhubmulesoft

Mulesoft On Premise Cluster vs Cloud Hub worker scaleout


Cloud hub workers are NOT clustered , however we get Message loss protection and workload distribution across mule instances using Persistent queues. Also we can use default persistent object store (_defaultUserObjectStore ) for distributed caching ( with tweak). Correct me if I am wrong here.

  1. With above features present , What is that we are missing in CloudHub as compared to On -premise clusters ? ( Is it Concurrency / one-time message delivery issue preventions ?)

  2. First of all why did Mulesoft not enable clustering feature on Cloud hub ?


Solution

  • I would say that with the above features present you do not miss out anything. Also keep in mind that even in the On Prem HA Cluster the shared queues and states (object stores) are by default keept in shared memory and there is no persistens if the complete cluster goes down. To get the persistence you need to do tweaks also for a on prem cluster. As such for true message reliability I would suggest you look at a external message broker or service such as Anypoint MQ.

    As for why Mulesoft did no enable clustering I can not answer since I'm not a Mulesoft employee. However best practices in integrations and API design is to keep the application stateless. When this is followed and you use a external message broker, such as Anypoint MQ, to implement the reliable messaging pattern the need for the Mule runtime HA cluster capabilities are small.