SlideShare a Scribd company logo
1 of 14
MULE HIGH
AVAILABILITY
INTRODUCTION
A cluster is a set of Mule instances that acts as a unit. In other words, a
cluster is a virtual server composed of multiple nodes. The servers in a
cluster communicate and share information through a distributedshared
memory grid. This means that the data is replicated across memory in
different physicalmachines.
ABOUT
CLUSTERI
NG
A Mule ESB Cluster consists of two to eight Mule ESB server instances, or nodes, grouped together and
treated as a single unit. Thus, you can deploy, monitor, or stop all the nodes in a cluster as if they were a
single Mule server.
Mule uses an active-active model to cluster servers, rather than an active-passive model.
In an active-passive model, one server in a cluster acts as the primary, or active node, while the others
are secondary, or passive nodes. The application in such a model runs on the primary server, and only
ever runs on the secondary server if the first one fails. In this model, the processing power of the
secondary node(s) is mostly wasted in passive waiting for the primary node to fail.
In an active-active model, no one server in the cluster acts as the primary server; all servers in the cluster
support the application. This application in this model runs on all the servers, even splitting apart
message processing between nodes to expedite processing across nodes.
ABOUT QUEUES
You can set up a VM queue explicitly to load balance across nodes. Thus, if your
entire application flow contains a sequence of child flows, Mule can assign each
successive child flow to whichever node happens to be available at thetime.
Potentially, Mule can process a single message on multiple nodes as itpasses
through the entire application flow, as illustrated in nextfigure:
ABOUT HIGH-RELIABILITY
APPLICATIONS
A high-reliability application must feature thefollowing:
1. zero tolerance for message loss
2. a reliable underlying enterprise service bus(ESB)
3. highly reliable individualconnections
CLUSTER SUPPORT FOR
TRANSPORTS
 Mule supports three basic types of transports:
1. Socket-based transports read input sent to network sockets that Mule owns.
Examples include TCP, UDP, and HTTP[S].
2. listener-based transports read data using a protocol that fully supports
concurrent multiple accessors. Examples include JMS and VM.
3. resource-based transports read data from a resource that allows multiple
concurrent accessors, but does not natively coordinate their use of the resource. For
instance, suppose multiple programs are processing files in the same shared
directory by reading, processing, and then deleting the files. These programs must
use an explicit, application-level locking strategy to prevent the same file from
being processed more than once. Examples of resource-based transports include
File, FTP, SFTP, E-mail, and JDBC.
CLUSTERING AND RELIABLE
APPLICATIONS
High-reliability applications (ones that have zero tolerance for message loss) notonly
require the underlying ESB to be reliable, but that reliability needs to extend to
individual connections. Reliability Patterns give you the tools to build fully reliable
applications in your clusters.
CLUSTERING AND
NETWORKING
Toensure reliable connectivity between cluster nodes, all nodes of a cluster
should be located on the same LAN. Implementing a cluster with nodesacross
geographically separated locations, such as different datacenters connected
through a VPN, is possible but not recommended and notsupported.
CLUSTERING AND LOAD
BALANCING
When Mule clusters are used to serve TCP requests (where TCP includes
SSL/TLS, UDP, Multicast, HTTP, and HTTPS), some load balancing is needed to
distribute the requests among the clustered instances. There are various
software load balancersavailable.
CLUSTERING FOR HIGH
PERFORMANCE
If high performance is your primary goal (rather than reliability), you can configurea
Mule cluster or an individual application for maximum performance using a
performance profile.
Setting the performance profile has twoeffects:
1. It disables distributed queues, using local queues instead to preventdata
serialization/deserialization and distribution in the shared data grid.
2. It implements the object store without backups, to avoid replication.
BEST PRACTICES
There are a number of recommended practices related to clustering. Theseinclude:
• As much as possible, organize your application into a series of steps where eachstep
moves the message from one transactional store to another.
• If your application processes messages from a non-transactional transport,use
areliability pattern to move them to a transactional store such as a VM or JMSstore.
• Use transactions to process messages from a transactional transport. This ensuresthat
if an error is encountered, the message will bereprocessed.
• Use distributed stores such as those used with the VM or JMS transport – these stores
are available to an entire cluster. This is preferable to the non-distributed stores used
with transports such as File, FTP,and JDBC – these stores are read by a single node ata
time.
• Use the VM transport to get optimal performance. Use the JMS transportfor
applications where data needs to be saved after the entire clusterexits.
• Create the number of nodes within a cluster that best meets your needs.
• Implement reliability patterns to create high reliability applications.
CONCLUSION
• Currently you can create a cluster consisting of at least two servers and up toa
maximum of eight. However, each server must run in a different physical (or
virtual) machine.
• Tomaintain synchronization between the nodes in the cluster, Mule HA requires a
reliable network connection betweenservers.
• You must keep the following ports open in order to set up a Mule cluster: port
5701 and port 54327.
• Because new cluster member discovery is performed using multicast, you needto
enable the multicast IP: 224.2.2.3

More Related Content

What's hot

Mule ESB
Mule ESBMule ESB
Mule ESBniravn
 
Introduction to mule Esbs
Introduction to mule EsbsIntroduction to mule Esbs
Introduction to mule EsbsPrabhat gangwar
 
Mule esb parts
Mule esb partsMule esb parts
Mule esb partsSindhu VL
 
Scatter gather flow in mule
Scatter gather flow in muleScatter gather flow in mule
Scatter gather flow in mulePraneethchampion
 
Muleflowarchitecturepart2
Muleflowarchitecturepart2Muleflowarchitecturepart2
Muleflowarchitecturepart2vijaynerd
 
Design flows in mule
Design flows in muleDesign flows in mule
Design flows in muleSindhu VL
 
Elements in a mule flow
Elements in a mule flowElements in a mule flow
Elements in a mule flowSindhu VL
 
Mule Microsoft Service Bus
Mule Microsoft Service BusMule Microsoft Service Bus
Mule Microsoft Service BusAnkush Sharma
 
Mule Cloudhub Connector
Mule Cloudhub ConnectorMule Cloudhub Connector
Mule Cloudhub ConnectorAnkush Sharma
 
Mule requester
Mule requesterMule requester
Mule requesterSindhu VL
 

What's hot (15)

Mule esb
Mule esbMule esb
Mule esb
 
Webservice vm in mule
Webservice vm in muleWebservice vm in mule
Webservice vm in mule
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
Introduction to mule Esbs
Introduction to mule EsbsIntroduction to mule Esbs
Introduction to mule Esbs
 
Mule esb parts
Mule esb partsMule esb parts
Mule esb parts
 
Scatter gather flow in mule
Scatter gather flow in muleScatter gather flow in mule
Scatter gather flow in mule
 
Muleflowarchitecturepart2
Muleflowarchitecturepart2Muleflowarchitecturepart2
Muleflowarchitecturepart2
 
Mule rabbitmq
Mule rabbitmqMule rabbitmq
Mule rabbitmq
 
Design flows in mule
Design flows in muleDesign flows in mule
Design flows in mule
 
Elements in a mule flow
Elements in a mule flowElements in a mule flow
Elements in a mule flow
 
Mule connectors
Mule  connectorsMule  connectors
Mule connectors
 
Mule Microsoft Service Bus
Mule Microsoft Service BusMule Microsoft Service Bus
Mule Microsoft Service Bus
 
Mule Cloudhub Connector
Mule Cloudhub ConnectorMule Cloudhub Connector
Mule Cloudhub Connector
 
Mule requester
Mule requesterMule requester
Mule requester
 
Mule esb
Mule esbMule esb
Mule esb
 

Similar to Mule high availability

Mule high availability (ha) cluster
Mule high availability (ha) clusterMule high availability (ha) cluster
Mule high availability (ha) clusterAchyuta Lakshmi
 
Queues and Mule Transport Mechanisms
Queues and Mule Transport MechanismsQueues and Mule Transport Mechanisms
Queues and Mule Transport MechanismsHarish43
 
Clustering concepts
Clustering conceptsClustering concepts
Clustering conceptsbapiraju
 
Clustering concepts
Clustering conceptsClustering concepts
Clustering conceptsHarish43
 
MuleSoft Surat Virtual Meetup#26 - Implementing Hybrid MuleSoft Runtime - Any...
MuleSoft Surat Virtual Meetup#26 - Implementing Hybrid MuleSoft Runtime - Any...MuleSoft Surat Virtual Meetup#26 - Implementing Hybrid MuleSoft Runtime - Any...
MuleSoft Surat Virtual Meetup#26 - Implementing Hybrid MuleSoft Runtime - Any...Jitendra Bafna
 
MuleSoft Surat Live Demonstration Virtual Meetup#2 - Customer Hosted Mule Run...
MuleSoft Surat Live Demonstration Virtual Meetup#2 - Customer Hosted Mule Run...MuleSoft Surat Live Demonstration Virtual Meetup#2 - Customer Hosted Mule Run...
MuleSoft Surat Live Demonstration Virtual Meetup#2 - Customer Hosted Mule Run...Jitendra Bafna
 
Cluster computings
Cluster computingsCluster computings
Cluster computingsRagu1033
 
Architecture of mule
Architecture of muleArchitecture of mule
Architecture of muleVamsi Krishna
 
Cluster computing pptl (2)
Cluster computing pptl (2)Cluster computing pptl (2)
Cluster computing pptl (2)Rohit Jain
 
Clustercomputingpptl2 120204125126-phpapp01
Clustercomputingpptl2 120204125126-phpapp01Clustercomputingpptl2 120204125126-phpapp01
Clustercomputingpptl2 120204125126-phpapp01Ankit Soni
 
Mule introduction
Mule introductionMule introduction
Mule introductionkiranvanga
 
What is Mule ESB
What is Mule ESB What is Mule ESB
What is Mule ESB Nam Le Dinh
 
Mule architecture
Mule architectureMule architecture
Mule architectureAnand kalla
 

Similar to Mule high availability (20)

Mule high availability (ha) cluster
Mule high availability (ha) clusterMule high availability (ha) cluster
Mule high availability (ha) cluster
 
Queues and Mule Transport Mechanisms
Queues and Mule Transport MechanismsQueues and Mule Transport Mechanisms
Queues and Mule Transport Mechanisms
 
Clustering concepts
Clustering conceptsClustering concepts
Clustering concepts
 
Clustering concepts
Clustering conceptsClustering concepts
Clustering concepts
 
Clustering concepts
Clustering conceptsClustering concepts
Clustering concepts
 
Mule esb presentation 2015
Mule esb presentation 2015Mule esb presentation 2015
Mule esb presentation 2015
 
MuleSoft Surat Virtual Meetup#26 - Implementing Hybrid MuleSoft Runtime - Any...
MuleSoft Surat Virtual Meetup#26 - Implementing Hybrid MuleSoft Runtime - Any...MuleSoft Surat Virtual Meetup#26 - Implementing Hybrid MuleSoft Runtime - Any...
MuleSoft Surat Virtual Meetup#26 - Implementing Hybrid MuleSoft Runtime - Any...
 
MuleSoft Surat Live Demonstration Virtual Meetup#2 - Customer Hosted Mule Run...
MuleSoft Surat Live Demonstration Virtual Meetup#2 - Customer Hosted Mule Run...MuleSoft Surat Live Demonstration Virtual Meetup#2 - Customer Hosted Mule Run...
MuleSoft Surat Live Demonstration Virtual Meetup#2 - Customer Hosted Mule Run...
 
Cluster computings
Cluster computingsCluster computings
Cluster computings
 
Architecture of mule
Architecture of muleArchitecture of mule
Architecture of mule
 
Cluster computing pptl (2)
Cluster computing pptl (2)Cluster computing pptl (2)
Cluster computing pptl (2)
 
Clustercomputingpptl2 120204125126-phpapp01
Clustercomputingpptl2 120204125126-phpapp01Clustercomputingpptl2 120204125126-phpapp01
Clustercomputingpptl2 120204125126-phpapp01
 
Failover cluster
Failover clusterFailover cluster
Failover cluster
 
Mule introduction
Mule introductionMule introduction
Mule introduction
 
Mule esb
Mule esbMule esb
Mule esb
 
cluster computing
cluster computingcluster computing
cluster computing
 
What is Mule ESB
What is Mule ESB What is Mule ESB
What is Mule ESB
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 
Mule architecture
Mule architectureMule architecture
Mule architecture
 

More from Son Nguyen

Wsdl connector introduction
Wsdl connector introductionWsdl connector introduction
Wsdl connector introductionSon Nguyen
 
Android intergrate with mule
Android intergrate with muleAndroid intergrate with mule
Android intergrate with muleSon Nguyen
 
Mule flow overview
Mule flow overviewMule flow overview
Mule flow overviewSon Nguyen
 
Mule flow and filter
Mule flow and filterMule flow and filter
Mule flow and filterSon Nguyen
 
Handle exceptions in mule
Handle exceptions in muleHandle exceptions in mule
Handle exceptions in muleSon Nguyen
 
Spring security integrate with mule
Spring security integrate with muleSpring security integrate with mule
Spring security integrate with muleSon Nguyen
 
Message processor in mule
Message processor in muleMessage processor in mule
Message processor in muleSon Nguyen
 
Expression language in mule
Expression language in muleExpression language in mule
Expression language in muleSon Nguyen
 
Mule with data weave
Mule with data weaveMule with data weave
Mule with data weaveSon Nguyen
 
Using spring scheduler mule
Using spring scheduler muleUsing spring scheduler mule
Using spring scheduler muleSon Nguyen
 
Composite source in bound and out-bound
Composite source in bound and out-boundComposite source in bound and out-bound
Composite source in bound and out-boundSon Nguyen
 
Batch job processing
Batch job processingBatch job processing
Batch job processingSon Nguyen
 
Using message enricher
Using message enricherUsing message enricher
Using message enricherSon Nguyen
 
Finance connectors with mule
Finance connectors with muleFinance connectors with mule
Finance connectors with muleSon Nguyen
 
Google drive connection
Google drive connectionGoogle drive connection
Google drive connectionSon Nguyen
 
Using properties in mule
Using properties in muleUsing properties in mule
Using properties in muleSon Nguyen
 
Mule integrate with microsoft
Mule integrate with microsoftMule integrate with microsoft
Mule integrate with microsoftSon Nguyen
 
Anypoint connectors
Anypoint connectorsAnypoint connectors
Anypoint connectorsSon Nguyen
 
Mule esb basic introduction
Mule esb basic introductionMule esb basic introduction
Mule esb basic introductionSon Nguyen
 

More from Son Nguyen (20)

Wsdl connector introduction
Wsdl connector introductionWsdl connector introduction
Wsdl connector introduction
 
Android intergrate with mule
Android intergrate with muleAndroid intergrate with mule
Android intergrate with mule
 
Mule flow overview
Mule flow overviewMule flow overview
Mule flow overview
 
Mule flow and filter
Mule flow and filterMule flow and filter
Mule flow and filter
 
Handle exceptions in mule
Handle exceptions in muleHandle exceptions in mule
Handle exceptions in mule
 
Spring security integrate with mule
Spring security integrate with muleSpring security integrate with mule
Spring security integrate with mule
 
Message processor in mule
Message processor in muleMessage processor in mule
Message processor in mule
 
Expression language in mule
Expression language in muleExpression language in mule
Expression language in mule
 
Mule with data weave
Mule with data weaveMule with data weave
Mule with data weave
 
Using spring scheduler mule
Using spring scheduler muleUsing spring scheduler mule
Using spring scheduler mule
 
Composite source in bound and out-bound
Composite source in bound and out-boundComposite source in bound and out-bound
Composite source in bound and out-bound
 
Batch job processing
Batch job processingBatch job processing
Batch job processing
 
Using message enricher
Using message enricherUsing message enricher
Using message enricher
 
Finance connectors with mule
Finance connectors with muleFinance connectors with mule
Finance connectors with mule
 
Google drive connection
Google drive connectionGoogle drive connection
Google drive connection
 
Using properties in mule
Using properties in muleUsing properties in mule
Using properties in mule
 
Mule integrate with microsoft
Mule integrate with microsoftMule integrate with microsoft
Mule integrate with microsoft
 
Jms queue
Jms queueJms queue
Jms queue
 
Anypoint connectors
Anypoint connectorsAnypoint connectors
Anypoint connectors
 
Mule esb basic introduction
Mule esb basic introductionMule esb basic introduction
Mule esb basic introduction
 

Recently uploaded

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Recently uploaded (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Mule high availability

  • 2. INTRODUCTION A cluster is a set of Mule instances that acts as a unit. In other words, a cluster is a virtual server composed of multiple nodes. The servers in a cluster communicate and share information through a distributedshared memory grid. This means that the data is replicated across memory in different physicalmachines.
  • 3.
  • 4. ABOUT CLUSTERI NG A Mule ESB Cluster consists of two to eight Mule ESB server instances, or nodes, grouped together and treated as a single unit. Thus, you can deploy, monitor, or stop all the nodes in a cluster as if they were a single Mule server. Mule uses an active-active model to cluster servers, rather than an active-passive model. In an active-passive model, one server in a cluster acts as the primary, or active node, while the others are secondary, or passive nodes. The application in such a model runs on the primary server, and only ever runs on the secondary server if the first one fails. In this model, the processing power of the secondary node(s) is mostly wasted in passive waiting for the primary node to fail. In an active-active model, no one server in the cluster acts as the primary server; all servers in the cluster support the application. This application in this model runs on all the servers, even splitting apart message processing between nodes to expedite processing across nodes.
  • 5. ABOUT QUEUES You can set up a VM queue explicitly to load balance across nodes. Thus, if your entire application flow contains a sequence of child flows, Mule can assign each successive child flow to whichever node happens to be available at thetime. Potentially, Mule can process a single message on multiple nodes as itpasses through the entire application flow, as illustrated in nextfigure:
  • 6.
  • 7. ABOUT HIGH-RELIABILITY APPLICATIONS A high-reliability application must feature thefollowing: 1. zero tolerance for message loss 2. a reliable underlying enterprise service bus(ESB) 3. highly reliable individualconnections
  • 8. CLUSTER SUPPORT FOR TRANSPORTS  Mule supports three basic types of transports: 1. Socket-based transports read input sent to network sockets that Mule owns. Examples include TCP, UDP, and HTTP[S]. 2. listener-based transports read data using a protocol that fully supports concurrent multiple accessors. Examples include JMS and VM. 3. resource-based transports read data from a resource that allows multiple concurrent accessors, but does not natively coordinate their use of the resource. For instance, suppose multiple programs are processing files in the same shared directory by reading, processing, and then deleting the files. These programs must use an explicit, application-level locking strategy to prevent the same file from being processed more than once. Examples of resource-based transports include File, FTP, SFTP, E-mail, and JDBC.
  • 9. CLUSTERING AND RELIABLE APPLICATIONS High-reliability applications (ones that have zero tolerance for message loss) notonly require the underlying ESB to be reliable, but that reliability needs to extend to individual connections. Reliability Patterns give you the tools to build fully reliable applications in your clusters.
  • 10. CLUSTERING AND NETWORKING Toensure reliable connectivity between cluster nodes, all nodes of a cluster should be located on the same LAN. Implementing a cluster with nodesacross geographically separated locations, such as different datacenters connected through a VPN, is possible but not recommended and notsupported.
  • 11. CLUSTERING AND LOAD BALANCING When Mule clusters are used to serve TCP requests (where TCP includes SSL/TLS, UDP, Multicast, HTTP, and HTTPS), some load balancing is needed to distribute the requests among the clustered instances. There are various software load balancersavailable.
  • 12. CLUSTERING FOR HIGH PERFORMANCE If high performance is your primary goal (rather than reliability), you can configurea Mule cluster or an individual application for maximum performance using a performance profile. Setting the performance profile has twoeffects: 1. It disables distributed queues, using local queues instead to preventdata serialization/deserialization and distribution in the shared data grid. 2. It implements the object store without backups, to avoid replication.
  • 13. BEST PRACTICES There are a number of recommended practices related to clustering. Theseinclude: • As much as possible, organize your application into a series of steps where eachstep moves the message from one transactional store to another. • If your application processes messages from a non-transactional transport,use areliability pattern to move them to a transactional store such as a VM or JMSstore. • Use transactions to process messages from a transactional transport. This ensuresthat if an error is encountered, the message will bereprocessed. • Use distributed stores such as those used with the VM or JMS transport – these stores are available to an entire cluster. This is preferable to the non-distributed stores used with transports such as File, FTP,and JDBC – these stores are read by a single node ata time. • Use the VM transport to get optimal performance. Use the JMS transportfor applications where data needs to be saved after the entire clusterexits. • Create the number of nodes within a cluster that best meets your needs. • Implement reliability patterns to create high reliability applications.
  • 14. CONCLUSION • Currently you can create a cluster consisting of at least two servers and up toa maximum of eight. However, each server must run in a different physical (or virtual) machine. • Tomaintain synchronization between the nodes in the cluster, Mule HA requires a reliable network connection betweenservers. • You must keep the following ports open in order to set up a Mule cluster: port 5701 and port 54327. • Because new cluster member discovery is performed using multicast, you needto enable the multicast IP: 224.2.2.3