2. 2
● Introductions
● Anypoint MQ Presentation
● Demo
● Trivia Quiz
● Networking time (We can extend our time if you are interested to chat ! )
Agenda
3. 3
● Santhosh Thondiraj ( https://www.linkedin.com/in/achieve-santhosh/ ) , Senior Software
Engineer at Apisero from Tamilnadu, India.
● 1.5 years of Experience in MuleSoft , MuleSoft Certified Developer
● Worked on migration projects from On-Premise into Cloudhub by implementing VPC & VPN.
● Passionate on Organizing/Participating in Marathoner events such as Half/10K runs .
● An Air Rifle/Pistol Shooter.
About The Speaker
4. 4
Sravan Lingam – Hyderabad India
● Senior Integration Developer and Architect at Billennium ,Poland
● MuleSoft Ambassador , MuleSoft Meetup Leader Hyderabad
● Technical Writer/Speaker/Trainer
● Owner of MuleSoft TechZone - YouTube, LinkedIn,FaceBook, Instagram and Twitter
● http://www.sravanlingam.com
● https://www.linkedin.com/in/sravanlingam/
About the Organizer
A SHOW OF HANDS:
Who is new to this Meetup?
5. 5
● training.mulesoft.com
● help.mulesoft.com
● Exam readiness sessions (only IST zone) .
● Great Events are on Its way : PKO (https://events.mulesoft.com/pko/home), TDX
(https://www.salesforce.com/trailblazerdx/)
● Become a Speaker/Leader/Mentor.
● About Trivia Quiz – common questions
● Questions on Vouchers, Session recordings etc.
● Provide us the Feedback
About the MuleSoft Community
6. { An Enterprise Subscription Feature, specially to handle Queue based Scenarios }
All About Anypoint MQ
8. Queue :
A queue is a temporary storage area used for inter-app communication, to transfer the message
from one API/service to another.
Anypoint MQ :
● It is a cloud messaging service that performs asynchronous messaging scenarios between applications
● It Supports large payloads (upto - 10 MB).
● It Enables easy connection to non-Mule applications using the REST API.
● It Provides a special feature called Dead-Letter Queue (DLQ)
8
9. Major Limitations of Anypoint MQ (on High-Level) :
● Anypoint MQ is :
● Exclusive for Enterprise Subscription and not for Trial Accounts.
● Is only available for the Cloudhub-hosted application; it is not available for the APIs hosted
on on-premise servers.
● Is Region and Environment specific.
● Two or more instances cannot retrieve the same Messages at the same time, one should wait
until the previous instance releases the Messages.
● Sometimes we cannot expect Quick reflection in Anypoint MQ User Interface, it may delay
some time to reflect the changes,
9
10. Regions where Anypoint MQ Available :
Anypoint MQ standard and FIFO queues are available in these regions:
10
Control Plane Location Region
US North America Northern Virginia (us-east-1)
Oregon (us-west-2)
Central Canada (ca-central-1)
EU Europe Ireland (eu-west-1)
London (eu-west-2)
AP APAC Singapore (ap-southeast-1)
Sydney (ap-southeast-2)
Tokyo (ap-northeast-1)
12. Types of Queue :
1. Queue ( Standard Queue )
2. FIFO Queue ( First In First Out )
Broadcaster/Queue :
1. Exchange :
12
13. 1. Queue ( Standard Queue ) :
● Storage area where messages where an application/service can send and receive messages to a
queue in an unordered manner.
● We can store an unlimited number of messages in a Queue.
● From API, we can pick maximum 1,20,000 messages at a time, but processing of those
messages will happen one by one randomly.
● From UI, we can view maximum 50 messages at a time.
13
14. 2. FIFO Queue ( First In First Out ) :
● It is as same as a standard queue, but here ordering of messages is maintained
● We can store an unlimited number of messages in a FIFO Queue.
● To ensure the ordering of messages it is restricted to pick 10 messages per processing state from both
API as well as from UI.
3. Exchange :
● Used to Broadcasting messages to a Queue.
● We can create an Exchange and bind other queues into an Exchange, so that whenever messages get
Published/Send to an Exchange, those messages will get Broadcast/Forwarded to all Queues associated
with the Exchange.
● Example : Broadcast feature in WhatsApp
14
15. Things to know before :
❖ We can create N number (Unlimited) Queues.
❖ Every Queue has 2 stages :
➢ In-Queue :
Which holds all the messages got Created/Published into a Queue
Ready for processing whenever needed.
➢ In-Flight :
Once subscriber/consumer start consuming the Queue, the messages will move from In-Queue
State → In-Flight state.
Under Processing.
Messages under In-Flight are Locked, those messages cannot be fetch by some other
subscribers/consumers.
❖ Queues and Messages cannot be shared between Regions and Environments.
15
16. Configuration Where and all needed :
To Create, Configure, Implement, and Use → the Anypoint MQ, we need to work on both :
1. Anypoint Platform :
● Create/Delete Queues
● Send/Delete Messages of Queues
● View Messages of Queues.
● Modifying Queues
● Create/Delete Client Apps
1. Anypoint Studio (Application) :
● Publish Messages into Queues
● Consume/Subscribe Messages of Queues
● Acknowledge the Messages of Queues.
16
18. Anypoint MQ Connectors:
By default Anypoint MQ connectors are not available in the Studio, we need to add the dependencies
from Exchange.
There are 5 Anypoint MQ Connectors/Operations
are available :
1. Publish
2. Subscribe
3. Consume
4. Ack
5. Nack
18
19. 1.Publish :
● To Publish/Send the Messages to the Queue which is already available/created in the Anypoint MQ.
● It’s a Processor
2.Subscribe :
● Subscribe the Queue and listen to the new Messages, and picks it.
● Whenever Queue receives any new Messages, Subscriber will automatically start trigger, and fetches
the Messages
● It’s a Source
3.Consume :
● Used to Consume Messages from the Assigned Queue.
● We can use Consume to consume the Messages anywhere in the Flow execution
● It’s a Processor 19
20. 4. ACK :
● ACK → Positive Acknowledgement
● If we want to Manually send a Positive Acknowledgement to the Queue about the successful
consumption of the message, we can use the ACK connector
● It’s a Processor
● Messages will be deleted from the Queue
5. NACK :
● NACK → Negative Acknowledgement
● If we want to Manually send a Negative Acknowledgement to the Queue, stating that the consumed
message is not processed successfully
● It’s a Processor
● Messages won’t be deleted from the Queue
20
22. Dead Letter Queue (DLQ) :
● DLQ is same as a Queue creation
● A special feature to keep a Track of Unprocessed Messages
● In some cases, Messages will keep-on failing during process, in that case we can reroute those
messages to DLQ by assigning it to a particular Queue . This helps us to find unprocessed
messages
● A dead letter queue is associated with one or more queues
Things to remember before creating Dead Letter Queue (DLQ) :
The DLQ and parent queue both need to be:
1. Same type of queue (standard or FIFO)
2. Created in the same geographical region
3. Created in the same environment and owned by the same Anypoint Platform account
22