SlideShare a Scribd company logo
1 of 22
Indianapolis MuleSoft Meetup Group # 5
JMS Capabilities With MuleSoft
2
Organizer
Ikram Mohamed
Integration Associate
@OneAmerica
About the organizer:
 Working as Integration Associate at OneAmerica.
 Indianapolis MuleSoft Meetup Leader.
 15+ Years of I.T Experience which includes 5+ years of
experience in Integrations and API Technologies.
 Certified MuleSoft Integration Developer and Platform Architect.
3
Speakers
Jitendra Bafna
Senior Solution Architect
Capgemini
About the speaker:
 Working as Senior Solution Architect at Capgemini.
 Surat MuleSoft Meetup Leader and MuleSoft Ambassador.
 12.5+ Years of Experience in Integrations and API
Technologies.
 Certified MuleSoft Integration Architect and platform
Architect.
CHEERS..!!
We have prizes to give away!
3 Winners a special prize is ready
4
A SHOW OF HANDS:
New Members With Us.!!
Agenda
Agenda
Introduction
JMS Queues
and Topics
JMS
Connector
JMS Design
Patterns
JMS
Behaviour –
Clustering
and Server
Group
Trivia Quiz
JMS (Java Messaging Service) is mostly used with APIs, enabling the application to
communicate through the exchange of messages. JMS connector is capable of sending and
receiving messages to and from topics and queues.
JMS supports two models for messaging:
• Queue (point to point).
• Topic (publish-subscribe).
6
JMS (Java Messaging Server)
• It enables one-to-one communication. It is also called point-to-point communication.
• The sender will deliver a message to the queue and single receivers will pick the message from
the queue.
• The receiver doesn't need to listen to the queue at the time the message is sent to the queue.
7
Queue
• It enables one-to-many communication. It is also called publish-subscribe communication.
• The publisher will deliver the message to a topic and it will be received by all subscribers who are
actively listening to the topic.
• A subscriber will miss the published message if it is not actively listening to the topic, unless
messages are made durable.
8
Topic
MuleSoft provides a JMS connector to connect any JMS supported MQ (e.g. Apache ActiveMQ).
JMS Connector provides various operations, such as:
• Ack
• Consume
• On New Message
• Publish
• Publish consume
• Recover session
9
Anypoint JMS Connector
The MuleSoft JMS connector provides a publish-consume operation to implement a request-reply
pattern. In this pattern, the requestor publishes the message to the Queue and the consumer
subscribes to the message from the Queue and performs the processing. Once the processing is
completed, the consumer will send a response back to the queue and the requestor will subscribe to
the message from the reply queue. This is called synchronous communication.
1
0
JMS – Request Reply Pattern
In persistent delivery, the JMS provider has to make sure that no message is lost in the case of a
JMS provider failure or that message can be recovered easily in the case of any failures. In the case
of any failures, JMS will make sure that the message can be sent to the Dead Letter Queue.
1
1
JMS – Guaranteed Delivery/Persistent Delivery
Durable Topic subscription allows you to receive a message when its published to the topic, even
when the consumer is offline. Once a durable subscription is registered, each time a consumer is
available it will receive all the messages published before the connection was established.
By default, Mule's subscription to a topic is non-durable.
1
2
JMS – Durable Topic Subscriptions
MuleSoft supports the transaction for the three connectors that are listed below:
• Database
• VM
• JMS
The transaction will ensure the atomicity and consistency. It is very useful when you want to make
sure that the series of operation executes successfully when the transaction is committed. In case of
any failures in any of the operations, the whole transaction needs to be rolled back and all the
systems must be in the same state they were in before the transaction started.
1
3
Transaction With MuleSoft and JMS
Behaviour of JMS Queues and Topics on the
Clustering and Server Group
Clustering is a group of nodes that acts as an single unit.
In JMS connector configuration, use can configure attribute primaryNodeOnly to define whether a
message will be only picked by the primary node or any node in the cluster. By default, the
primaryNodeOnly attribute is false.
In other words:
• if primaryNodeOnly attribute is false, the clustering works in active-active mode.
• if primaryNodeOnly attribute is true, then clustering works in active-passive mode.
1
5
Use Case 1: Application Deployed on a
Cluster With a Queue Listener
(primaryNodeOnly=false)
When primaryNodeOnly is true, all messages will be delivered to the primary node in the cluster. If
the primary node goes down, any one of the other nodes in the cluster will become primary and the
message will be delivered to that node.
1
6
Use Case 2: Application Deployed on a
Cluster With Queue Listener
(primaryNodeOnly=true)
In case of the Topic listener, you need to make sure that if a message needs to be delivered to only
one node that both nodes don't process the same message. To do this, make sure that
primaryNodeOnly attribute is true on JMS connector configuration.
1
7
Use Case 3: Application Deployed on a
Cluster With Topic Listener
(primaryNodeOnly=true)
In case of the Topic listener, you need to make sure that if a message needs to be delivered to only
one node that both nodes don't process the same message. To do this, make sure that
primaryNodeOnly attribute is true on JMS connector configuration.
1
8
Use Case 4: Application Deployed on a
Server Group With a Topic Listener
In the case of a server group with a queue listener, the message will be only delivered to one of the
nodesin the server group as the queue has a property whereby its delivers one message to one
consumer, even if multiple consumers are listening to the same queue. It will send message
randomly to one of the consumer.
1
9
Use Case 5: Application Deployed on a
Server Group With a Queue Listener
https://dzone.com/articles/implementing-clustering-with-mulesoft-runtime-mana
https://youtube.com/playlist?list=PL5GwZHHgKcuCB2Zy7ApKBIFDbyWqKVqZV
https://docs.mulesoft.com/runtime-manager/managing-servers
2
0
References
Get ready to WIN a Special Gift from MuleSoft Community
Quiz Time
Thank you

More Related Content

Similar to Indianapolis mule soft_meetup_12_june_2021

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
 
Apache ActiveMQ and Apache Camel
Apache ActiveMQ and Apache CamelApache ActiveMQ and Apache Camel
Apache ActiveMQ and Apache CamelOmi Om
 
JMS - Java Messaging Service
JMS - Java Messaging ServiceJMS - Java Messaging Service
JMS - Java Messaging ServicePeter R. Egli
 
#7 (Java Message Service)
#7 (Java Message Service)#7 (Java Message Service)
#7 (Java Message Service)Ghadeer AlHasan
 
Enterprise messaging with jms
Enterprise messaging with jmsEnterprise messaging with jms
Enterprise messaging with jmsSridhar Reddy
 
Java message service
Java message serviceJava message service
Java message serviceVeeramani S
 
Design Patterns - Distributed Publisher-Subscriber Network
Design Patterns - Distributed Publisher-Subscriber NetworkDesign Patterns - Distributed Publisher-Subscriber Network
Design Patterns - Distributed Publisher-Subscriber NetworkRishabh Karajgi
 
MOM - Message Oriented Middleware
MOM - Message Oriented MiddlewareMOM - Message Oriented Middleware
MOM - Message Oriented MiddlewarePeter R. Egli
 
Messaging Frameworks using JMS
Messaging Frameworks using JMS Messaging Frameworks using JMS
Messaging Frameworks using JMS Arvind Kumar G.S
 
1st Feb 2020 MuleSoft Meetup
1st Feb 2020 MuleSoft Meetup1st Feb 2020 MuleSoft Meetup
1st Feb 2020 MuleSoft MeetupPankaj Goyal
 
Designing Distributed Systems
Designing Distributed SystemsDesigning Distributed Systems
Designing Distributed SystemsDhananjay Singh
 
Websphere MQ admin guide
Websphere MQ admin guideWebsphere MQ admin guide
Websphere MQ admin guideRam Babu
 
Kafka Overview
Kafka OverviewKafka Overview
Kafka Overviewiamtodor
 
Introduction to NServiceBus
Introduction to NServiceBusIntroduction to NServiceBus
Introduction to NServiceBusEspen Ekvang
 
Java Message Service
Java Message ServiceJava Message Service
Java Message ServiceAMIT YADAV
 

Similar to Indianapolis mule soft_meetup_12_june_2021 (20)

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...
 
Apache ActiveMQ and Apache Camel
Apache ActiveMQ and Apache CamelApache ActiveMQ and Apache Camel
Apache ActiveMQ and Apache Camel
 
JMS - Java Messaging Service
JMS - Java Messaging ServiceJMS - Java Messaging Service
JMS - Java Messaging Service
 
#7 (Java Message Service)
#7 (Java Message Service)#7 (Java Message Service)
#7 (Java Message Service)
 
Enterprise messaging with jms
Enterprise messaging with jmsEnterprise messaging with jms
Enterprise messaging with jms
 
Java message service
Java message serviceJava message service
Java message service
 
Design Patterns - Distributed Publisher-Subscriber Network
Design Patterns - Distributed Publisher-Subscriber NetworkDesign Patterns - Distributed Publisher-Subscriber Network
Design Patterns - Distributed Publisher-Subscriber Network
 
MOM - Message Oriented Middleware
MOM - Message Oriented MiddlewareMOM - Message Oriented Middleware
MOM - Message Oriented Middleware
 
Triage Presentation
Triage PresentationTriage Presentation
Triage Presentation
 
Messaging Frameworks using JMS
Messaging Frameworks using JMS Messaging Frameworks using JMS
Messaging Frameworks using JMS
 
Jms intro
Jms introJms intro
Jms intro
 
1st Feb 2020 MuleSoft Meetup
1st Feb 2020 MuleSoft Meetup1st Feb 2020 MuleSoft Meetup
1st Feb 2020 MuleSoft Meetup
 
Jms intro
Jms introJms intro
Jms intro
 
Designing Distributed Systems
Designing Distributed SystemsDesigning Distributed Systems
Designing Distributed Systems
 
Websphere MQ admin guide
Websphere MQ admin guideWebsphere MQ admin guide
Websphere MQ admin guide
 
Mule jms
Mule   jmsMule   jms
Mule jms
 
Kafka Overview
Kafka OverviewKafka Overview
Kafka Overview
 
Introduction to NServiceBus
Introduction to NServiceBusIntroduction to NServiceBus
Introduction to NServiceBus
 
Java Message Service
Java Message ServiceJava Message Service
Java Message Service
 

More from ikram_ahamed

Indy_MuleSoft_Meetup_Sept_30 2 (1).pptx
Indy_MuleSoft_Meetup_Sept_30 2 (1).pptxIndy_MuleSoft_Meetup_Sept_30 2 (1).pptx
Indy_MuleSoft_Meetup_Sept_30 2 (1).pptxikram_ahamed
 
Indianapolis_meetup_April-1st-2022.pptx
Indianapolis_meetup_April-1st-2022.pptxIndianapolis_meetup_April-1st-2022.pptx
Indianapolis_meetup_April-1st-2022.pptxikram_ahamed
 
Indy meetup#7 effective unit-testing-mule
Indy meetup#7 effective unit-testing-muleIndy meetup#7 effective unit-testing-mule
Indy meetup#7 effective unit-testing-muleikram_ahamed
 
Indianapolis mulesoft meetup_sep_11_2021
Indianapolis mulesoft meetup_sep_11_2021Indianapolis mulesoft meetup_sep_11_2021
Indianapolis mulesoft meetup_sep_11_2021ikram_ahamed
 
Indianapolis mule soft_meetup_14_apr_2021-Review a complex Dataweave Transfor...
Indianapolis mule soft_meetup_14_apr_2021-Review a complex Dataweave Transfor...Indianapolis mule soft_meetup_14_apr_2021-Review a complex Dataweave Transfor...
Indianapolis mule soft_meetup_14_apr_2021-Review a complex Dataweave Transfor...ikram_ahamed
 
Indianapolis mule soft_meetup_30_jan_2021 (1)
Indianapolis mule soft_meetup_30_jan_2021 (1)Indianapolis mule soft_meetup_30_jan_2021 (1)
Indianapolis mule soft_meetup_30_jan_2021 (1)ikram_ahamed
 

More from ikram_ahamed (6)

Indy_MuleSoft_Meetup_Sept_30 2 (1).pptx
Indy_MuleSoft_Meetup_Sept_30 2 (1).pptxIndy_MuleSoft_Meetup_Sept_30 2 (1).pptx
Indy_MuleSoft_Meetup_Sept_30 2 (1).pptx
 
Indianapolis_meetup_April-1st-2022.pptx
Indianapolis_meetup_April-1st-2022.pptxIndianapolis_meetup_April-1st-2022.pptx
Indianapolis_meetup_April-1st-2022.pptx
 
Indy meetup#7 effective unit-testing-mule
Indy meetup#7 effective unit-testing-muleIndy meetup#7 effective unit-testing-mule
Indy meetup#7 effective unit-testing-mule
 
Indianapolis mulesoft meetup_sep_11_2021
Indianapolis mulesoft meetup_sep_11_2021Indianapolis mulesoft meetup_sep_11_2021
Indianapolis mulesoft meetup_sep_11_2021
 
Indianapolis mule soft_meetup_14_apr_2021-Review a complex Dataweave Transfor...
Indianapolis mule soft_meetup_14_apr_2021-Review a complex Dataweave Transfor...Indianapolis mule soft_meetup_14_apr_2021-Review a complex Dataweave Transfor...
Indianapolis mule soft_meetup_14_apr_2021-Review a complex Dataweave Transfor...
 
Indianapolis mule soft_meetup_30_jan_2021 (1)
Indianapolis mule soft_meetup_30_jan_2021 (1)Indianapolis mule soft_meetup_30_jan_2021 (1)
Indianapolis mule soft_meetup_30_jan_2021 (1)
 

Recently uploaded

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
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
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
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
 
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
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
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
 
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
 

Recently uploaded (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
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
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
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
 
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...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
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
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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
 
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
 

Indianapolis mule soft_meetup_12_june_2021

  • 1. Indianapolis MuleSoft Meetup Group # 5 JMS Capabilities With MuleSoft
  • 2. 2 Organizer Ikram Mohamed Integration Associate @OneAmerica About the organizer:  Working as Integration Associate at OneAmerica.  Indianapolis MuleSoft Meetup Leader.  15+ Years of I.T Experience which includes 5+ years of experience in Integrations and API Technologies.  Certified MuleSoft Integration Developer and Platform Architect.
  • 3. 3 Speakers Jitendra Bafna Senior Solution Architect Capgemini About the speaker:  Working as Senior Solution Architect at Capgemini.  Surat MuleSoft Meetup Leader and MuleSoft Ambassador.  12.5+ Years of Experience in Integrations and API Technologies.  Certified MuleSoft Integration Architect and platform Architect.
  • 4. CHEERS..!! We have prizes to give away! 3 Winners a special prize is ready 4 A SHOW OF HANDS: New Members With Us.!!
  • 5. Agenda Agenda Introduction JMS Queues and Topics JMS Connector JMS Design Patterns JMS Behaviour – Clustering and Server Group Trivia Quiz
  • 6. JMS (Java Messaging Service) is mostly used with APIs, enabling the application to communicate through the exchange of messages. JMS connector is capable of sending and receiving messages to and from topics and queues. JMS supports two models for messaging: • Queue (point to point). • Topic (publish-subscribe). 6 JMS (Java Messaging Server)
  • 7. • It enables one-to-one communication. It is also called point-to-point communication. • The sender will deliver a message to the queue and single receivers will pick the message from the queue. • The receiver doesn't need to listen to the queue at the time the message is sent to the queue. 7 Queue
  • 8. • It enables one-to-many communication. It is also called publish-subscribe communication. • The publisher will deliver the message to a topic and it will be received by all subscribers who are actively listening to the topic. • A subscriber will miss the published message if it is not actively listening to the topic, unless messages are made durable. 8 Topic
  • 9. MuleSoft provides a JMS connector to connect any JMS supported MQ (e.g. Apache ActiveMQ). JMS Connector provides various operations, such as: • Ack • Consume • On New Message • Publish • Publish consume • Recover session 9 Anypoint JMS Connector
  • 10. The MuleSoft JMS connector provides a publish-consume operation to implement a request-reply pattern. In this pattern, the requestor publishes the message to the Queue and the consumer subscribes to the message from the Queue and performs the processing. Once the processing is completed, the consumer will send a response back to the queue and the requestor will subscribe to the message from the reply queue. This is called synchronous communication. 1 0 JMS – Request Reply Pattern
  • 11. In persistent delivery, the JMS provider has to make sure that no message is lost in the case of a JMS provider failure or that message can be recovered easily in the case of any failures. In the case of any failures, JMS will make sure that the message can be sent to the Dead Letter Queue. 1 1 JMS – Guaranteed Delivery/Persistent Delivery
  • 12. Durable Topic subscription allows you to receive a message when its published to the topic, even when the consumer is offline. Once a durable subscription is registered, each time a consumer is available it will receive all the messages published before the connection was established. By default, Mule's subscription to a topic is non-durable. 1 2 JMS – Durable Topic Subscriptions
  • 13. MuleSoft supports the transaction for the three connectors that are listed below: • Database • VM • JMS The transaction will ensure the atomicity and consistency. It is very useful when you want to make sure that the series of operation executes successfully when the transaction is committed. In case of any failures in any of the operations, the whole transaction needs to be rolled back and all the systems must be in the same state they were in before the transaction started. 1 3 Transaction With MuleSoft and JMS
  • 14. Behaviour of JMS Queues and Topics on the Clustering and Server Group
  • 15. Clustering is a group of nodes that acts as an single unit. In JMS connector configuration, use can configure attribute primaryNodeOnly to define whether a message will be only picked by the primary node or any node in the cluster. By default, the primaryNodeOnly attribute is false. In other words: • if primaryNodeOnly attribute is false, the clustering works in active-active mode. • if primaryNodeOnly attribute is true, then clustering works in active-passive mode. 1 5 Use Case 1: Application Deployed on a Cluster With a Queue Listener (primaryNodeOnly=false)
  • 16. When primaryNodeOnly is true, all messages will be delivered to the primary node in the cluster. If the primary node goes down, any one of the other nodes in the cluster will become primary and the message will be delivered to that node. 1 6 Use Case 2: Application Deployed on a Cluster With Queue Listener (primaryNodeOnly=true)
  • 17. In case of the Topic listener, you need to make sure that if a message needs to be delivered to only one node that both nodes don't process the same message. To do this, make sure that primaryNodeOnly attribute is true on JMS connector configuration. 1 7 Use Case 3: Application Deployed on a Cluster With Topic Listener (primaryNodeOnly=true)
  • 18. In case of the Topic listener, you need to make sure that if a message needs to be delivered to only one node that both nodes don't process the same message. To do this, make sure that primaryNodeOnly attribute is true on JMS connector configuration. 1 8 Use Case 4: Application Deployed on a Server Group With a Topic Listener
  • 19. In the case of a server group with a queue listener, the message will be only delivered to one of the nodesin the server group as the queue has a property whereby its delivers one message to one consumer, even if multiple consumers are listening to the same queue. It will send message randomly to one of the consumer. 1 9 Use Case 5: Application Deployed on a Server Group With a Queue Listener
  • 21. Get ready to WIN a Special Gift from MuleSoft Community Quiz Time