Although there are various deployment options to deploy applications on Mule Anypoint runtime, there are several factors to consider when choosing your deployment options. Mulesoft provides four deployment options to deploy an application on Anypoint runtime — i.e., CloudHub, Runtime Fabric, On-Premise, and Hybrid (CloudHub and On-premise) — one of the options should suit your organizational needs.
CloudHub is widely used in the financial and healthcare industries successfully, where data is sent back and forth for countless transactions. The technical drawbacks include an inability to access local file systems, difficulty when transferring files among applications, and there are constraints when using object stores (in-memory DB).
Mule On-Premise is successfully used by highly regulated organizations, such as government and banking industries that have sensitive data needing a high level of privacy and security. However, Mule On-Premise will require additional cost for load balancers, firewalls, and all the other network components that might be necessary to make your application compliant with your organizational and departmental standards.
With Mulesoft, CloudHub customers can host and manage Mule runtimes in the MuleSoft cloud. Enterprise-grade capabilities include 99.99% uptime, one-click scalability, and automatic updates, whereas in an On-premise environment, it is standalone Mule runtime instances where the applications are deployed and managed by the infrastructure team. Hybrid is a combination of CloudHub and On-premise, which provides features and benefits of both. Mule Runtime Fabric is a container service that allows customers to perform multiple-cloud deployments of Mule runtimes.
Below, we’ll describe each of the options and their advantages/disadvantages.
Mulesoft Deployment Option #1: CloudHub
- CloudHub is an iPaaS (integration Platform as a Service) where one can deploy applications from the runtime manager console without any configuration to a hosting environment.
- Applications running on multiple workers can share the load automatically and balances the incoming traffic with CloudHub load balancer.
- It monitors services and workers, and if there is any hardware failure, then it shifts to a different worker with zero downtime.
- It doesn’t coordinate invocations of Anypoint Connector for FTP and Anypoint Connector for File endpoints across multiple workers.
- CloudHub Runtime manager dashboard provides all deployed application performance metrics.
- Shared resources for multiple applications in the CloudHub environment is not possible, unlike in On-premise projects.
- In the cloud, we can have only one application per worker, so we can’t deploy more than ten applications with a Mule instance. However, we can segment out available CPU capacity and monitor resource levels once it’s done.
Mulesoft Deployment Option #2: On-Premise
- We have complete control over the Mule instance when applications are deployed
On-premise, enabling us to take advantage of the following features.
- We can create a common domain to define configurations that can be referenced by multiple applications, and all applications are deployed together within that domain. By default, your application references the default domain unless defined as a common domain. It enables exposure to different services in different projects through the configured HTTP host and port without causing conflicts.
- A Mule instance is able to run different versions of an application.
- Mule runtime engine reloads application’s configuration changes automatically without stopping service.
- In an on-premise environment, enterprises maintain all their data and are in full control. Companies in highly regulated industries with extra privacy concerns will go with an on-premise deployment.
- In an on-premise environment, there is an additional cost for the load balancers, firewalls, and all the other network components that might be necessary to make your application compliant with your organizational and departmental standards in addition to MuleSoft product license price.
- Furthermore, the installation will take place in the organization’s data center; one would be responsible for ensuring that it’s done correctly and properly maintained for the entire lifetime of the enterprise’s Enterprise Server Bus (ESB) needs.
Mulesoft Deployment Option #3: Runtime Fabric (Cloud or On-premise)
- Anypoint Runtime Fabric is a container service for multiple-cloud deployments of Mule runtimes.
- With Anypoint Runtime Fabric, it’s easy to deploy Mule applications and APIs to their managed infrastructure such as an organization’s on-premises data centers or private IaaS while maintaining centralized control through MuleSoft-hosted and development environments.
- We can deploy Mule runtimes in different environments like AWS, Virtual Machines, Microsoft Azure, and Bare-metal.
- Using Docker and Kubernetes, one can maintain orchestration and automation.
- With Anypoint Runtime Fabric, we can achieve benefits of both CloudHub as well as on-premise features i.e., redeploy with zero downtime, Isolate applications, and deploy multiple runtime versions in the same Anypoint Runtime Fabric and horizontal scaling.
- The whole Anypoint Runtime Fabric provides cloud-like features that could run on organization managed infrastructure or in a cloud environment.
MuleSoft CloudHub, On-premise, & Runtime Fabric Comparison
Which MuleSoft Deployment is Right for You?
Mule On-Premise environment is well suited for organizations that are highly regulated, whereas CloudHub is widely used where data is sent back and forth for countless transactions. The drawbacks are not being able to access local file systems, transfer files among applications, and having some constraints while using object stores (in-memory DB).
Anypoint Runtime Fabric allows teams to implement capabilities like trustworthy isolation between applications, scaling, application deployments with zero downtime much faster using out-of-the-box components. In short, Anypoint Runtime Fabric bridges the gap between multiple clouds and on-premises resources to help enterprises meet changing business requirements in a quick and efficient manner.