SlideShare a Scribd company logo
1 of 22
Download to read offline
12/12/2020
Kolkata MuleSoft Meetup Group
Pub Sub Integration using Anypoint MQ
Mulesoft Secure Properties Best Practices
2
● Introductions
● Pub Sub Integration using Anypoint MQ
● Mulesoft Secure Properties Best Practices
● Trivia Quiz
Agenda
3
Introductions
A SHOW OF HANDS:
Who is new to this Meetup?
4
● About the Speaker:
A SHOW OF HANDS:
Who is new to this Meetup?
• 8+ Years experience in Integration
technologies and working as Solution
Architect at Apisero.
• MuleSoft meetup leader for Kolkata,
India
• Experience in other Integration
technologies like SoftwareAG
webMethods.
by Roikka Hazarika
Pub Sub Integration using
Anypoint MQ
6
Agenda
1. What is Publish-Subscribe Integration Pattern
2. Anypoint MQ Basics
3. Anypoint MQ Publish
4. Anypoint MQ Subscribe & Consume
5. Acknowledge Modes
6. Comparison with Other Message Queues
7. FAQ
8. Q&A
Asynchronous Messaging Pattern
Asynchronous Integration Pattern
P1 C2
C3
C1
m1
m1
m1
m1
Publish Subscribe Pattern
P1 C2
C3
C1
m1,
m2,
m3
m3
m2
m1
Message Queue Pattern
P1 C2m1| m2|m3
C3
C1
m1,
m2,
m3
m3
m2
m1
r1| r2|r3
r1
r2
r3
r1 | r2 | r3
Request Reply Pattern
Anypoint MQ Basics
10
Anypoint MQ
● Cloud native Message Queue Service
● Fully Integrated with Anypoint Platform
● Enables connection to non mule apps via REST apis
● Provides dead-letter queue capability for undeliverable messages.
● Supports large payloads, encryption, queuing, and publish/subscribe (pub/sub) paradigms.
● Underlying architecture is based on AWS SQS (Simple Queuing Service)
● Provides Anypoint Studio access, which makes the process of leveraging your queues and
message exchanges as simple as drag, drop, and configure.
11
Anypoint MQ Publish
● Messages can be published to 2 types of Queues.
○ Standard Queue
These queues don’t guarantee a specific message order. Standard queues are the best fit for
applications in which messages must be delivered quickly.
Supports upto 120000 in-flight messages per standard queue.
Multiple standard queues can be bound to a message exchange.
○ FIFO Queue
These queues ensure that your messages arrive in order. FIFO queues are the best fit for applications
requiring strict message ordering and exactly-once delivery, but in which message delivery speed is of
less importance
It supports upto 10 messages per message group.
It doesn’t support message exchange.
12
Anypoint MQ Subscribe
● Consume Operation
○ Consumes single message at any point in the flow
By default, the Consume operation waits for 10 seconds for a new message to arrive
when consuming from an empty queue. Consume fails if no message arrives in that
timeframe.
● Subscribe Operation
Listen for new messages as a subscriber source and consumes the incoming messages.
○ Maximum Throughput mode
○ Predictable Message Consumption Mode
13
Message Acknowledgement
● Automatic
○ By default, the Subscriber source uses the AUTO acknowledgment mode.
○ It executes an ACK only when the processing finishes without exceptions
● Immediate
○ The consumed message is acknowledged right before being dispatched to the Mule flow. If
the message acknowledgment fails, the message is discarded.
● Manual
○ ackToken value is required for manual acknowledgement.
○ Ack: Acknowledging a message (ACK) informs the broker that the message has been processed
and must be removed from the queue to prevent redelivery.
○ Nack: Not acknowledging (NACK) a message informs the broker that the message was not
processed successfully and commands the broker to return the message to the queue for redelivery to
any available consumer.
Demo
15
Standard and FIFO Queue Comparison
Criteria Standard Queue FIFO Queue
Message Concurrency Limited by mule runtime threading model maxConcurrency=1
Message Correlation Can be published with custom
MessageId/CorrelationId, but don’t have
subscription filtering
Can be published with custom
MessageId/CorrelationId, but don’t have
subscription filtering
Message ordering Not guaranteed (Best effort ordering) Guaranteed
Max payload size 10MB 10MB
TPS (Transaction Per Second) NA Default is 300 TPS. If batch size is 10 then it can
be raised upto 3000 tps.
Max in-flight message 120,000 10
Max batch size 10 (batchSize >10 is overridden) 10 (batchSize >10 is overridden)
Duplicate message NA Within deduplication interval duplicate messages
are discarded.
16
Active MQ vs Anypoint MQ
Selection Criteria Active MQ Anypoint MQ
Deployment options Both on premise and cloud is available. Only available in cloud. AWS SQS is the backbone
Availability Based on installed location 3 regions
Data Size Depends on the disk size. Limits messages to 10MB.
Protocol support AMQP, MQTT, Stomp, OpenWire, REST and others Only works over HTTP. Uses HTTP long polling under the
hood.
Reconnection Strategy Supports. Doesn’t support as it doesn’t use a connection based
protocol.
Maximum TPS Not limited by design. Doesn’t have a limit for standard queues, but FIFO queues
can support maximum 3000 TPS.
Request/Reply message support Supports OOTB. Doesn’t support OOTB.
Guaranteed Message Capability Supports guaranteed delivery using persistence storage.
However persistence queue/topic performance is slower
than transient one.
Guarantees “at least once” delivery of messages
17
Anypoint MQ FAQ
● In which regions Anypoint MQ is available?
○ US (NA, EU, APAC), EU(Frankfurt, Ireland) and APAC
● Can messages and queues shared between regions?
○ No
● What is the message size limit?
○ 10 MB
● Can Anypoint MQ be used on premise?
○ On premise deployment is not supported. However messages can be published from on premise app
to anypoint mq and can be subscribed by on premise app.
● Why do we receive fewer messages than the batch size while using AMQ conenctor?
○ Anypoint MQ works on the best effort mechanism as it’s based on SQS. For example, if there are 5
messages in a queue, the system returns anywhere from 0-5 messages in a single API call depending
on what distributed subsystems are accessed by that request.
● How to process messages from a DLQ?
○ Automatic processing of DLQ is not available at the moment. However a separate flow can be
implement to process DLQ messages.
Thank you.
19
On your Cell Phone or Laptop go to KAHOOT.IT and enter the pin
that will be shared shortly
https://kahoot.com/
Questions and multi-choice answers will be displayed on this
screen. Use your Cell phone to select the right answer – You’ll
need both screens open to participate
Kahoot Quiz
Notices and Next Meetup
21
● Share:
○ Tweet using the hashtag #MuleSoftMeetups
○ Invite your network to join: https://meetups.mulesoft.com/adelaide/
● Feedback:
○ Fill out the survey feedback and suggest topics for upcoming events
○ Contact MuleSoft at meetups@mulesoft.com for ways to improve the program
What’s next?
Thank you

More Related Content

What's hot

Extensible Messaging and Presence Protocol (XMPP) with GCM
Extensible Messaging and Presence Protocol (XMPP) with GCMExtensible Messaging and Presence Protocol (XMPP) with GCM
Extensible Messaging and Presence Protocol (XMPP) with GCMMalwinder Singh
 
Introduction to CoAP
Introduction to CoAPIntroduction to CoAP
Introduction to CoAPEMQ
 
Analysis of Link State Resource Reservation Protocol for Congestion Managemen...
Analysis of Link State Resource Reservation Protocol for Congestion Managemen...Analysis of Link State Resource Reservation Protocol for Congestion Managemen...
Analysis of Link State Resource Reservation Protocol for Congestion Managemen...ijgca
 
Connection Establishment & Flow and Congestion Control
Connection Establishment & Flow and Congestion ControlConnection Establishment & Flow and Congestion Control
Connection Establishment & Flow and Congestion ControlAdeel Rasheed
 
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...Edielson P. Frigieri
 
Introduction to MQTT
Introduction to MQTTIntroduction to MQTT
Introduction to MQTTEMQ
 
mqtt intro short
mqtt intro shortmqtt intro short
mqtt intro shortMahmutERKEN
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
 
Computer network (18)
Computer network (18)Computer network (18)
Computer network (18)NYversity
 
加快互联网核心协议,提高Web速度yuchungcheng
加快互联网核心协议,提高Web速度yuchungcheng加快互联网核心协议,提高Web速度yuchungcheng
加快互联网核心协议,提高Web速度yuchungchengMichael Zhang
 
RabbitMQ vs Apache Kafka - Part 1
RabbitMQ vs Apache Kafka - Part 1RabbitMQ vs Apache Kafka - Part 1
RabbitMQ vs Apache Kafka - Part 1Erlang Solutions
 
GopherFest 2017 - Adding Context to NATS
GopherFest 2017 -  Adding Context to NATSGopherFest 2017 -  Adding Context to NATS
GopherFest 2017 - Adding Context to NATSwallyqs
 

What's hot (20)

Congestion control in TCP
Congestion control in TCPCongestion control in TCP
Congestion control in TCP
 
Extensible Messaging and Presence Protocol (XMPP) with GCM
Extensible Messaging and Presence Protocol (XMPP) with GCMExtensible Messaging and Presence Protocol (XMPP) with GCM
Extensible Messaging and Presence Protocol (XMPP) with GCM
 
Building chat bot
Building chat botBuilding chat bot
Building chat bot
 
Introduction to CoAP
Introduction to CoAPIntroduction to CoAP
Introduction to CoAP
 
Analysis of Link State Resource Reservation Protocol for Congestion Managemen...
Analysis of Link State Resource Reservation Protocol for Congestion Managemen...Analysis of Link State Resource Reservation Protocol for Congestion Managemen...
Analysis of Link State Resource Reservation Protocol for Congestion Managemen...
 
Connection Establishment & Flow and Congestion Control
Connection Establishment & Flow and Congestion ControlConnection Establishment & Flow and Congestion Control
Connection Establishment & Flow and Congestion Control
 
MQTT and CoAP
MQTT and CoAPMQTT and CoAP
MQTT and CoAP
 
TCP Congestion Control
TCP Congestion ControlTCP Congestion Control
TCP Congestion Control
 
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
 
Introduction to MQTT
Introduction to MQTTIntroduction to MQTT
Introduction to MQTT
 
mqtt intro short
mqtt intro shortmqtt intro short
mqtt intro short
 
IoT Coap
IoT Coap IoT Coap
IoT Coap
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
Computer network (18)
Computer network (18)Computer network (18)
Computer network (18)
 
CoAP Talk
CoAP TalkCoAP Talk
CoAP Talk
 
Real-Time Streaming Protocol -QOS
Real-Time Streaming Protocol -QOSReal-Time Streaming Protocol -QOS
Real-Time Streaming Protocol -QOS
 
加快互联网核心协议,提高Web速度yuchungcheng
加快互联网核心协议,提高Web速度yuchungcheng加快互联网核心协议,提高Web速度yuchungcheng
加快互联网核心协议,提高Web速度yuchungcheng
 
RabbitMQ vs Apache Kafka - Part 1
RabbitMQ vs Apache Kafka - Part 1RabbitMQ vs Apache Kafka - Part 1
RabbitMQ vs Apache Kafka - Part 1
 
ZeroMQ in PHP
ZeroMQ in PHPZeroMQ in PHP
ZeroMQ in PHP
 
GopherFest 2017 - Adding Context to NATS
GopherFest 2017 -  Adding Context to NATSGopherFest 2017 -  Adding Context to NATS
GopherFest 2017 - Adding Context to NATS
 

Similar to #4 Mulesoft Virtual Meetup Kolkata December 2020

Mumbai MuleSoft Meetup #20
Mumbai MuleSoft Meetup #20Mumbai MuleSoft Meetup #20
Mumbai MuleSoft Meetup #20Akshata Sawant
 
MuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQ
MuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQMuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQ
MuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQJitendra Bafna
 
MuleSoft Surat Virtual Meetup#33 - Unleash the power of Anypoint MQ and DLQ
MuleSoft Surat Virtual Meetup#33 - Unleash the power of Anypoint MQ and DLQ MuleSoft Surat Virtual Meetup#33 - Unleash the power of Anypoint MQ and DLQ
MuleSoft Surat Virtual Meetup#33 - Unleash the power of Anypoint MQ and DLQ Jitendra Bafna
 
Patna_Meetup_MQ
Patna_Meetup_MQPatna_Meetup_MQ
Patna_Meetup_MQOm Prakash
 
Hyderabad mule meetup_march_2022
Hyderabad mule meetup_march_2022Hyderabad mule meetup_march_2022
Hyderabad mule meetup_march_2022Sravan Lingam
 
Going Deep with MQ
Going Deep with MQGoing Deep with MQ
Going Deep with MQMatt Leming
 
MuleSoft_Meetup_on_Anypoint_MQ_Presentation_with_Template.pdf
MuleSoft_Meetup_on_Anypoint_MQ_Presentation_with_Template.pdfMuleSoft_Meetup_on_Anypoint_MQ_Presentation_with_Template.pdf
MuleSoft_Meetup_on_Anypoint_MQ_Presentation_with_Template.pdfLavinaDesaiAmbani
 
Velocity Conference '13: Asynchronous messaging for performance optimization,...
Velocity Conference '13: Asynchronous messaging for performance optimization,...Velocity Conference '13: Asynchronous messaging for performance optimization,...
Velocity Conference '13: Asynchronous messaging for performance optimization,...Al Sargent
 
Learn Anypoint MQ | MuleSoft Mysore Meetup #7
Learn Anypoint MQ | MuleSoft Mysore Meetup #7Learn Anypoint MQ | MuleSoft Mysore Meetup #7
Learn Anypoint MQ | MuleSoft Mysore Meetup #7MysoreMuleSoftMeetup
 
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...Manish Kumar Yadav
 
Apache Kafka - Free Friday
Apache Kafka - Free FridayApache Kafka - Free Friday
Apache Kafka - Free FridayOtávio Carvalho
 
MuleSoft Meetup Singapore #8 March 2021
MuleSoft Meetup Singapore #8 March 2021MuleSoft Meetup Singapore #8 March 2021
MuleSoft Meetup Singapore #8 March 2021Julian Douch
 
RabbitMQ interview Questions and Answers
RabbitMQ interview Questions and AnswersRabbitMQ interview Questions and Answers
RabbitMQ interview Questions and Answersjeetendra mandal
 
Messaging queue - Kafka
Messaging queue - KafkaMessaging queue - Kafka
Messaging queue - KafkaMayank Bansal
 
Introduction MQTT in English
Introduction MQTT in EnglishIntroduction MQTT in English
Introduction MQTT in EnglishEric Xiao
 
Comparison of mqtt and coap protocol
Comparison of mqtt and coap protocolComparison of mqtt and coap protocol
Comparison of mqtt and coap protocolYUSUF HUMAYUN
 
Non-Kafkaesque Apache Kafka - Yottabyte 2018
Non-Kafkaesque Apache Kafka - Yottabyte 2018Non-Kafkaesque Apache Kafka - Yottabyte 2018
Non-Kafkaesque Apache Kafka - Yottabyte 2018Otávio Carvalho
 
Deep Dive into the Pulsar Binary Protocol - Pulsar Virtual Summit Europe 2021
Deep Dive into the Pulsar Binary Protocol - Pulsar Virtual Summit Europe 2021Deep Dive into the Pulsar Binary Protocol - Pulsar Virtual Summit Europe 2021
Deep Dive into the Pulsar Binary Protocol - Pulsar Virtual Summit Europe 2021StreamNative
 

Similar to #4 Mulesoft Virtual Meetup Kolkata December 2020 (20)

Mumbai MuleSoft Meetup #20
Mumbai MuleSoft Meetup #20Mumbai MuleSoft Meetup #20
Mumbai MuleSoft Meetup #20
 
MuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQ
MuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQMuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQ
MuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQ
 
MuleSoft Surat Virtual Meetup#33 - Unleash the power of Anypoint MQ and DLQ
MuleSoft Surat Virtual Meetup#33 - Unleash the power of Anypoint MQ and DLQ MuleSoft Surat Virtual Meetup#33 - Unleash the power of Anypoint MQ and DLQ
MuleSoft Surat Virtual Meetup#33 - Unleash the power of Anypoint MQ and DLQ
 
Patna_Meetup_MQ
Patna_Meetup_MQPatna_Meetup_MQ
Patna_Meetup_MQ
 
Hyderabad mule meetup_march_2022
Hyderabad mule meetup_march_2022Hyderabad mule meetup_march_2022
Hyderabad mule meetup_march_2022
 
Going Deep with MQ
Going Deep with MQGoing Deep with MQ
Going Deep with MQ
 
MuleSoft_Meetup_on_Anypoint_MQ_Presentation_with_Template.pdf
MuleSoft_Meetup_on_Anypoint_MQ_Presentation_with_Template.pdfMuleSoft_Meetup_on_Anypoint_MQ_Presentation_with_Template.pdf
MuleSoft_Meetup_on_Anypoint_MQ_Presentation_with_Template.pdf
 
Velocity Conference '13: Asynchronous messaging for performance optimization,...
Velocity Conference '13: Asynchronous messaging for performance optimization,...Velocity Conference '13: Asynchronous messaging for performance optimization,...
Velocity Conference '13: Asynchronous messaging for performance optimization,...
 
Learn Anypoint MQ | MuleSoft Mysore Meetup #7
Learn Anypoint MQ | MuleSoft Mysore Meetup #7Learn Anypoint MQ | MuleSoft Mysore Meetup #7
Learn Anypoint MQ | MuleSoft Mysore Meetup #7
 
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
 
Apache Kafka - Free Friday
Apache Kafka - Free FridayApache Kafka - Free Friday
Apache Kafka - Free Friday
 
AMQP with RabbitMQ
AMQP with RabbitMQAMQP with RabbitMQ
AMQP with RabbitMQ
 
MuleSoft Meetup Singapore #8 March 2021
MuleSoft Meetup Singapore #8 March 2021MuleSoft Meetup Singapore #8 March 2021
MuleSoft Meetup Singapore #8 March 2021
 
MQTT Introduction
MQTT IntroductionMQTT Introduction
MQTT Introduction
 
RabbitMQ interview Questions and Answers
RabbitMQ interview Questions and AnswersRabbitMQ interview Questions and Answers
RabbitMQ interview Questions and Answers
 
Messaging queue - Kafka
Messaging queue - KafkaMessaging queue - Kafka
Messaging queue - Kafka
 
Introduction MQTT in English
Introduction MQTT in EnglishIntroduction MQTT in English
Introduction MQTT in English
 
Comparison of mqtt and coap protocol
Comparison of mqtt and coap protocolComparison of mqtt and coap protocol
Comparison of mqtt and coap protocol
 
Non-Kafkaesque Apache Kafka - Yottabyte 2018
Non-Kafkaesque Apache Kafka - Yottabyte 2018Non-Kafkaesque Apache Kafka - Yottabyte 2018
Non-Kafkaesque Apache Kafka - Yottabyte 2018
 
Deep Dive into the Pulsar Binary Protocol - Pulsar Virtual Summit Europe 2021
Deep Dive into the Pulsar Binary Protocol - Pulsar Virtual Summit Europe 2021Deep Dive into the Pulsar Binary Protocol - Pulsar Virtual Summit Europe 2021
Deep Dive into the Pulsar Binary Protocol - Pulsar Virtual Summit Europe 2021
 

Recently uploaded

Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseWSO2
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governanceWSO2
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxMarkSteadman7
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard37
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....rightmanforbloodline
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 

Recently uploaded (20)

Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern Enterprise
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 

#4 Mulesoft Virtual Meetup Kolkata December 2020

  • 1. 12/12/2020 Kolkata MuleSoft Meetup Group Pub Sub Integration using Anypoint MQ Mulesoft Secure Properties Best Practices
  • 2. 2 ● Introductions ● Pub Sub Integration using Anypoint MQ ● Mulesoft Secure Properties Best Practices ● Trivia Quiz Agenda
  • 3. 3 Introductions A SHOW OF HANDS: Who is new to this Meetup?
  • 4. 4 ● About the Speaker: A SHOW OF HANDS: Who is new to this Meetup? • 8+ Years experience in Integration technologies and working as Solution Architect at Apisero. • MuleSoft meetup leader for Kolkata, India • Experience in other Integration technologies like SoftwareAG webMethods.
  • 5. by Roikka Hazarika Pub Sub Integration using Anypoint MQ
  • 6. 6 Agenda 1. What is Publish-Subscribe Integration Pattern 2. Anypoint MQ Basics 3. Anypoint MQ Publish 4. Anypoint MQ Subscribe & Consume 5. Acknowledge Modes 6. Comparison with Other Message Queues 7. FAQ 8. Q&A
  • 8. Asynchronous Integration Pattern P1 C2 C3 C1 m1 m1 m1 m1 Publish Subscribe Pattern P1 C2 C3 C1 m1, m2, m3 m3 m2 m1 Message Queue Pattern P1 C2m1| m2|m3 C3 C1 m1, m2, m3 m3 m2 m1 r1| r2|r3 r1 r2 r3 r1 | r2 | r3 Request Reply Pattern
  • 10. 10 Anypoint MQ ● Cloud native Message Queue Service ● Fully Integrated with Anypoint Platform ● Enables connection to non mule apps via REST apis ● Provides dead-letter queue capability for undeliverable messages. ● Supports large payloads, encryption, queuing, and publish/subscribe (pub/sub) paradigms. ● Underlying architecture is based on AWS SQS (Simple Queuing Service) ● Provides Anypoint Studio access, which makes the process of leveraging your queues and message exchanges as simple as drag, drop, and configure.
  • 11. 11 Anypoint MQ Publish ● Messages can be published to 2 types of Queues. ○ Standard Queue These queues don’t guarantee a specific message order. Standard queues are the best fit for applications in which messages must be delivered quickly. Supports upto 120000 in-flight messages per standard queue. Multiple standard queues can be bound to a message exchange. ○ FIFO Queue These queues ensure that your messages arrive in order. FIFO queues are the best fit for applications requiring strict message ordering and exactly-once delivery, but in which message delivery speed is of less importance It supports upto 10 messages per message group. It doesn’t support message exchange.
  • 12. 12 Anypoint MQ Subscribe ● Consume Operation ○ Consumes single message at any point in the flow By default, the Consume operation waits for 10 seconds for a new message to arrive when consuming from an empty queue. Consume fails if no message arrives in that timeframe. ● Subscribe Operation Listen for new messages as a subscriber source and consumes the incoming messages. ○ Maximum Throughput mode ○ Predictable Message Consumption Mode
  • 13. 13 Message Acknowledgement ● Automatic ○ By default, the Subscriber source uses the AUTO acknowledgment mode. ○ It executes an ACK only when the processing finishes without exceptions ● Immediate ○ The consumed message is acknowledged right before being dispatched to the Mule flow. If the message acknowledgment fails, the message is discarded. ● Manual ○ ackToken value is required for manual acknowledgement. ○ Ack: Acknowledging a message (ACK) informs the broker that the message has been processed and must be removed from the queue to prevent redelivery. ○ Nack: Not acknowledging (NACK) a message informs the broker that the message was not processed successfully and commands the broker to return the message to the queue for redelivery to any available consumer.
  • 14. Demo
  • 15. 15 Standard and FIFO Queue Comparison Criteria Standard Queue FIFO Queue Message Concurrency Limited by mule runtime threading model maxConcurrency=1 Message Correlation Can be published with custom MessageId/CorrelationId, but don’t have subscription filtering Can be published with custom MessageId/CorrelationId, but don’t have subscription filtering Message ordering Not guaranteed (Best effort ordering) Guaranteed Max payload size 10MB 10MB TPS (Transaction Per Second) NA Default is 300 TPS. If batch size is 10 then it can be raised upto 3000 tps. Max in-flight message 120,000 10 Max batch size 10 (batchSize >10 is overridden) 10 (batchSize >10 is overridden) Duplicate message NA Within deduplication interval duplicate messages are discarded.
  • 16. 16 Active MQ vs Anypoint MQ Selection Criteria Active MQ Anypoint MQ Deployment options Both on premise and cloud is available. Only available in cloud. AWS SQS is the backbone Availability Based on installed location 3 regions Data Size Depends on the disk size. Limits messages to 10MB. Protocol support AMQP, MQTT, Stomp, OpenWire, REST and others Only works over HTTP. Uses HTTP long polling under the hood. Reconnection Strategy Supports. Doesn’t support as it doesn’t use a connection based protocol. Maximum TPS Not limited by design. Doesn’t have a limit for standard queues, but FIFO queues can support maximum 3000 TPS. Request/Reply message support Supports OOTB. Doesn’t support OOTB. Guaranteed Message Capability Supports guaranteed delivery using persistence storage. However persistence queue/topic performance is slower than transient one. Guarantees “at least once” delivery of messages
  • 17. 17 Anypoint MQ FAQ ● In which regions Anypoint MQ is available? ○ US (NA, EU, APAC), EU(Frankfurt, Ireland) and APAC ● Can messages and queues shared between regions? ○ No ● What is the message size limit? ○ 10 MB ● Can Anypoint MQ be used on premise? ○ On premise deployment is not supported. However messages can be published from on premise app to anypoint mq and can be subscribed by on premise app. ● Why do we receive fewer messages than the batch size while using AMQ conenctor? ○ Anypoint MQ works on the best effort mechanism as it’s based on SQS. For example, if there are 5 messages in a queue, the system returns anywhere from 0-5 messages in a single API call depending on what distributed subsystems are accessed by that request. ● How to process messages from a DLQ? ○ Automatic processing of DLQ is not available at the moment. However a separate flow can be implement to process DLQ messages.
  • 19. 19 On your Cell Phone or Laptop go to KAHOOT.IT and enter the pin that will be shared shortly https://kahoot.com/ Questions and multi-choice answers will be displayed on this screen. Use your Cell phone to select the right answer – You’ll need both screens open to participate Kahoot Quiz
  • 21. 21 ● Share: ○ Tweet using the hashtag #MuleSoftMeetups ○ Invite your network to join: https://meetups.mulesoft.com/adelaide/ ● Feedback: ○ Fill out the survey feedback and suggest topics for upcoming events ○ Contact MuleSoft at meetups@mulesoft.com for ways to improve the program What’s next?