SlideShare a Scribd company logo
1 of 11
General Concepts of Mule clusters

A cluster is a set of Mule runtimes that acts as a unit. A cluster is a
virtual server composed of multiple nodes. The nodes (Mule runtimes)
in a cluster communicate and share information through a distributed
shared memory grid.
Benefits of Clustering:

By default, clustering Mule runtimes ensures high system availability.
If a Mule runtime node becomes unavailable due to failure or planned
downtime, another node in the cluster can assume the workload and
continue to process existing events and messages.

clusters can also improve performance and scalability.

Compared to a single node instance, clusters can support more users
or improve application performance by sharing the workload across
multiple nodes or by adding nodes to the cluster.

Beyond benefits such as high availability through automatic failover,
improved performance, and enhanced scalability, clustering Mule
runtimes offers the following benefits:
i. Automatic coordination of access to resources such as files,
databases, and FTP sources. The Mule runtime cluster
automatically manages which node (Mule runtime) will handle
communication from a data source.
ii. Automatic load balancing of processing within a cluster. If you
divide your flows into a series of steps and connect these steps
with a transport such as VM, each step is put in a queue, making it
cluster enabled. The cluster of Mule runtimes can then process
each step in any node, and so better balance the load across nodes.
iii.Cluster lifecycle management and control.
iv.Cluster and node performance monitoring.
v. Raised alerts. You can set up an alert to appear when a node goes
down and when a node comes back up.

If high performance is your primary goal, you can configure a Mule
cluster or an individual application for maximum performance using a
performance profile. By implementing the performance profile for
specific applications within a cluster, you can maximize the
scalability of your deployments while deploying applications with
different performance and reliability requirements in the same cluster.

By implementing the performance profile at the container level, you
apply it to all applications within that container. Application-level
configuration overrides container-level configuration.

Setting the performance profile has two effects:
(a) It disables distributed queues, using local queues instead to
prevent data serialization/deserialization and distribution in the
shared data grid.
(b) It implements the object store without backups, to avoid
replication.

Concurrency Issues Solved by Clusters:

File based transports: All Mule instances access the same mule file
folders concurrently, which can lead to duplicate file processing
and even possible failures if a file is deleted or modified by the
Mule application

Multicast transport: All mule instances get the same TCP requests
and then process duplicate messages

JMS Topics: All mule instances connect to the same JMS topic,
which may lead to repeated processing of messages when scaling
the non clustered Mule instance horizontally

JMS request-reply/request-response: All Mule instances are
listening for messages in the same response queue, this implies
that a Mule instance might obtain a response that isn’t correlated
to the request it sent. This can result in incorrect responses or
make a flow fail with timeout.

Idempotent-redelivery-policy: Idempotency doesn’t work if the
same request is received by different Mule instances. Duplicated
messages aren’t possible.

Salesforce streaming API: if multiple instances of the same
application are deployed, they will fail since the API only supports
a single consumer. No failover support in case the instance
connected is stopped or crashes.

Clustering:

Mule uses an active-active model to cluster Mule runtimes, rather
than an active-passive model.

In an active-passive model, one node 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 node,
and only ever runs on the secondary node if the first one fails. In
this model, the processing power of the secondary node is mostly
wasted in passive waiting for the primary node to fail.

In an active-active model, no one node in the cluster acts as the
primary node all nodes in the cluster support the application. This
application in this model runs on all the nodes, even splitting apart
message processing between nodes to expedite processing across
nodes.
Managing Mule High Availability (HA) Clusters

The management console gives you the ability to manage server
clusters. A cluster is a group of linked servers that work closely
together. Once servers are added to a cluster, they function in many
ways as if they were a single server.

You can perform the following cluster-related tasks with the
console:
− Create a cluster
− Deploy, redeploy, or undeploy an application to or from a
cluster
− Monitor a cluster, including its status
− "Disband" or delete a cluster

Ports Used for Clustering:
In order to configure a cluster, be sure to keep the following ports open:

port 5701, which is used for communication between Mule and the
cluster nodes

port 54327, which is used for discovery of new cluster members

New cluster member discovery is performed using multicast, thus
the multicast IP 224.2.2.3 must be enabled as well.

More Related Content

What's hot

Mule servlet connector
Mule servlet connectorMule servlet connector
Mule servlet connectorAnkush Sharma
 
Batch processing
Batch processingBatch processing
Batch processingbapiraju
 
Mule concepts filters scopes_routers
Mule concepts filters scopes_routersMule concepts filters scopes_routers
Mule concepts filters scopes_routerskunal vishe
 
File connector mule
File connector   muleFile connector   mule
File connector muleSindhu VL
 
Mule splitters
Mule splittersMule splitters
Mule splittersGandham38
 
Mule Message Chunk Aggregator
Mule Message Chunk AggregatorMule Message Chunk Aggregator
Mule Message Chunk AggregatorAnkush Sharma
 
Mule threading profile & processing strategy
Mule threading profile & processing strategyMule threading profile & processing strategy
Mule threading profile & processing strategychetan singhal
 
Scatter gather component - mule
Scatter gather component - muleScatter gather component - mule
Scatter gather component - muleSindhu VL
 
Choice router mule
Choice router   muleChoice router   mule
Choice router muleSindhu VL
 
Mule Schema Validation Filter
Mule Schema Validation FilterMule Schema Validation Filter
Mule Schema Validation FilterAnkush Sharma
 
Mule scopes request_response_scope
Mule scopes request_response_scopeMule scopes request_response_scope
Mule scopes request_response_scopekunal vishe
 
About mule transformers
About mule transformersAbout mule transformers
About mule transformersprudhvivreddy
 
Working with components
Working with componentsWorking with components
Working with componentsprudhvivreddy
 
Mule Expression Transformer
Mule Expression TransformerMule Expression Transformer
Mule Expression TransformerAnkush Sharma
 

What's hot (20)

Mule jms
Mule   jmsMule   jms
Mule jms
 
Mule servlet connector
Mule servlet connectorMule servlet connector
Mule servlet connector
 
Batch processing
Batch processingBatch processing
Batch processing
 
Mule concepts filters scopes_routers
Mule concepts filters scopes_routersMule concepts filters scopes_routers
Mule concepts filters scopes_routers
 
File connector mule
File connector   muleFile connector   mule
File connector mule
 
Mule splitters
Mule splittersMule splitters
Mule splitters
 
Mule esb introduction
Mule esb introductionMule esb introduction
Mule esb introduction
 
Mule Message Chunk Aggregator
Mule Message Chunk AggregatorMule Message Chunk Aggregator
Mule Message Chunk Aggregator
 
Mule threading profile & processing strategy
Mule threading profile & processing strategyMule threading profile & processing strategy
Mule threading profile & processing strategy
 
Mule JMS transport
Mule JMS transportMule JMS transport
Mule JMS transport
 
Scatter gather component - mule
Scatter gather component - muleScatter gather component - mule
Scatter gather component - mule
 
Mule SFTP connector
Mule SFTP connectorMule SFTP connector
Mule SFTP connector
 
Choice router mule
Choice router   muleChoice router   mule
Choice router mule
 
Mule Schema Validation Filter
Mule Schema Validation FilterMule Schema Validation Filter
Mule Schema Validation Filter
 
Mule scopes request_response_scope
Mule scopes request_response_scopeMule scopes request_response_scope
Mule scopes request_response_scope
 
About mule transformers
About mule transformersAbout mule transformers
About mule transformers
 
Cluster computing
Cluster computingCluster computing
Cluster computing
 
Working with components
Working with componentsWorking with components
Working with components
 
Mule Expression Transformer
Mule Expression TransformerMule Expression Transformer
Mule Expression Transformer
 
Mule splitters
Mule splittersMule splitters
Mule splitters
 

Viewers also liked

How to connect with Marketo connector
How to connect with Marketo connectorHow to connect with Marketo connector
How to connect with Marketo connectorZaheer Ahmad Chaudhry
 
Connecting To MS SQL Server With Mulesoft (Stored Procedure To Insert data)
Connecting To MS SQL Server With Mulesoft (Stored Procedure To Insert data)Connecting To MS SQL Server With Mulesoft (Stored Procedure To Insert data)
Connecting To MS SQL Server With Mulesoft (Stored Procedure To Insert data)Jitendra Bafna
 
Tong quan ve cong nghe thong tin
Tong quan ve cong nghe thong tinTong quan ve cong nghe thong tin
Tong quan ve cong nghe thong tinNghia Le
 
Application Architecture: The Next Wave | MuleSoft
Application Architecture: The Next Wave | MuleSoftApplication Architecture: The Next Wave | MuleSoft
Application Architecture: The Next Wave | MuleSoftMuleSoft
 
Custom connectorsinmule
Custom connectorsinmuleCustom connectorsinmule
Custom connectorsinmuleAjay Rana
 

Viewers also liked (8)

How to connect with Marketo connector
How to connect with Marketo connectorHow to connect with Marketo connector
How to connect with Marketo connector
 
Gestion mule
Gestion muleGestion mule
Gestion mule
 
Hard Copy Double-Page Spread Analysis
Hard Copy Double-Page Spread Analysis Hard Copy Double-Page Spread Analysis
Hard Copy Double-Page Spread Analysis
 
Connecting To MS SQL Server With Mulesoft (Stored Procedure To Insert data)
Connecting To MS SQL Server With Mulesoft (Stored Procedure To Insert data)Connecting To MS SQL Server With Mulesoft (Stored Procedure To Insert data)
Connecting To MS SQL Server With Mulesoft (Stored Procedure To Insert data)
 
Tong quan ve cong nghe thong tin
Tong quan ve cong nghe thong tinTong quan ve cong nghe thong tin
Tong quan ve cong nghe thong tin
 
MySQL Cluster Basics
MySQL Cluster BasicsMySQL Cluster Basics
MySQL Cluster Basics
 
Application Architecture: The Next Wave | MuleSoft
Application Architecture: The Next Wave | MuleSoftApplication Architecture: The Next Wave | MuleSoft
Application Architecture: The Next Wave | MuleSoft
 
Custom connectorsinmule
Custom connectorsinmuleCustom connectorsinmule
Custom connectorsinmule
 

Similar to Clustering concepts

Mule high availability (ha) cluster
Mule high availability (ha) clusterMule high availability (ha) cluster
Mule high availability (ha) clusterAchyuta Lakshmi
 
Mule high availability
Mule high availabilityMule high availability
Mule high availabilitySon Nguyen
 
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
 
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
 
Queues and Mule Transport Mechanisms
Queues and Mule Transport MechanismsQueues and Mule Transport Mechanisms
Queues and Mule Transport MechanismsHarish43
 
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
 
Cloud computing1
Cloud computing1Cloud computing1
Cloud computing1ali raza
 
Cluster computing ppt
Cluster computing pptCluster computing ppt
Cluster computing pptDC Graphics
 
Elements in a mule flow
Elements in a mule flowElements in a mule flow
Elements in a mule flowSindhu VL
 
Elements in a muleflow
Elements in a muleflowElements in a muleflow
Elements in a muleflowThang Loi
 
Mule introduction
Mule introductionMule introduction
Mule introductionkiranvanga
 

Similar to Clustering concepts (20)

Mule high availability (ha) cluster
Mule high availability (ha) clusterMule high availability (ha) cluster
Mule high availability (ha) cluster
 
Mule high availability
Mule high availabilityMule high availability
Mule high availability
 
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
 
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...
 
Queues and Mule Transport Mechanisms
Queues and Mule Transport MechanismsQueues and Mule Transport Mechanisms
Queues and Mule Transport Mechanisms
 
Cluster computing
Cluster computingCluster computing
Cluster computing
 
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...
 
Cloud computing1
Cloud computing1Cloud computing1
Cloud computing1
 
Cluster computing ppt
Cluster computing pptCluster computing ppt
Cluster computing ppt
 
Mule esb presentation 2015
Mule esb presentation 2015Mule esb presentation 2015
Mule esb presentation 2015
 
Elements in a mule flow
Elements in a mule flowElements in a mule flow
Elements in a mule flow
 
Elements in a muleflow
Elements in a muleflowElements in a muleflow
Elements in a muleflow
 
Cluster Computing
Cluster ComputingCluster Computing
Cluster Computing
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
 
Mule architecture
Mule   architectureMule   architecture
Mule architecture
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
CLUSTER COMPUTING
CLUSTER COMPUTINGCLUSTER COMPUTING
CLUSTER COMPUTING
 
Mule introduction
Mule introductionMule introduction
Mule introduction
 
Cluster computing
Cluster computingCluster computing
Cluster computing
 

Recently uploaded

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 

Recently uploaded (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 

Clustering concepts

  • 1. General Concepts of Mule clusters  A cluster is a set of Mule runtimes that acts as a unit. A cluster is a virtual server composed of multiple nodes. The nodes (Mule runtimes) in a cluster communicate and share information through a distributed shared memory grid.
  • 2. Benefits of Clustering:  By default, clustering Mule runtimes ensures high system availability. If a Mule runtime node becomes unavailable due to failure or planned downtime, another node in the cluster can assume the workload and continue to process existing events and messages.
  • 3.  clusters can also improve performance and scalability.  Compared to a single node instance, clusters can support more users or improve application performance by sharing the workload across multiple nodes or by adding nodes to the cluster.
  • 4.  Beyond benefits such as high availability through automatic failover, improved performance, and enhanced scalability, clustering Mule runtimes offers the following benefits: i. Automatic coordination of access to resources such as files, databases, and FTP sources. The Mule runtime cluster automatically manages which node (Mule runtime) will handle communication from a data source. ii. Automatic load balancing of processing within a cluster. If you divide your flows into a series of steps and connect these steps with a transport such as VM, each step is put in a queue, making it cluster enabled. The cluster of Mule runtimes can then process each step in any node, and so better balance the load across nodes. iii.Cluster lifecycle management and control. iv.Cluster and node performance monitoring. v. Raised alerts. You can set up an alert to appear when a node goes down and when a node comes back up.
  • 5.  If high performance is your primary goal, you can configure a Mule cluster or an individual application for maximum performance using a performance profile. By implementing the performance profile for specific applications within a cluster, you can maximize the scalability of your deployments while deploying applications with different performance and reliability requirements in the same cluster.  By implementing the performance profile at the container level, you apply it to all applications within that container. Application-level configuration overrides container-level configuration.  Setting the performance profile has two effects: (a) It disables distributed queues, using local queues instead to prevent data serialization/deserialization and distribution in the shared data grid. (b) It implements the object store without backups, to avoid replication.
  • 6.  Concurrency Issues Solved by Clusters:  File based transports: All Mule instances access the same mule file folders concurrently, which can lead to duplicate file processing and even possible failures if a file is deleted or modified by the Mule application  Multicast transport: All mule instances get the same TCP requests and then process duplicate messages  JMS Topics: All mule instances connect to the same JMS topic, which may lead to repeated processing of messages when scaling the non clustered Mule instance horizontally  JMS request-reply/request-response: All Mule instances are listening for messages in the same response queue, this implies that a Mule instance might obtain a response that isn’t correlated to the request it sent. This can result in incorrect responses or make a flow fail with timeout.
  • 7.  Idempotent-redelivery-policy: Idempotency doesn’t work if the same request is received by different Mule instances. Duplicated messages aren’t possible.  Salesforce streaming API: if multiple instances of the same application are deployed, they will fail since the API only supports a single consumer. No failover support in case the instance connected is stopped or crashes.
  • 8.  Clustering:  Mule uses an active-active model to cluster Mule runtimes, rather than an active-passive model.  In an active-passive model, one node 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 node, and only ever runs on the secondary node if the first one fails. In this model, the processing power of the secondary node is mostly wasted in passive waiting for the primary node to fail.
  • 9.  In an active-active model, no one node in the cluster acts as the primary node all nodes in the cluster support the application. This application in this model runs on all the nodes, even splitting apart message processing between nodes to expedite processing across nodes.
  • 10. Managing Mule High Availability (HA) Clusters  The management console gives you the ability to manage server clusters. A cluster is a group of linked servers that work closely together. Once servers are added to a cluster, they function in many ways as if they were a single server.  You can perform the following cluster-related tasks with the console: − Create a cluster − Deploy, redeploy, or undeploy an application to or from a cluster − Monitor a cluster, including its status − "Disband" or delete a cluster
  • 11.  Ports Used for Clustering: In order to configure a cluster, be sure to keep the following ports open:  port 5701, which is used for communication between Mule and the cluster nodes  port 54327, which is used for discovery of new cluster members  New cluster member discovery is performed using multicast, thus the multicast IP 224.2.2.3 must be enabled as well.