MuleSoft customers enjoy the benefits of designing and developing event driven applications at a fast pace, but they are also not exempted from the challenges of describing event driven architectures.
The use of Async API specifications helps bring control and proper governance to event driven systems.
Jose Mariano Sanchez Zetina, will be taking us through a practical session on how to use Async API specifications when describing event driven architecture in MuleSoft.
This session to should appeal to developers, architects, analysts, api and integration enthusiasts.
4. 4
● Manna Akpan
● Background in Optometry – nearly 14
years ago.
● Fulltime Solution Architect @ EPAM with
specialty in API Integration Practices.
Part-time FIFA soccer gamer. Started
writing mule applications in 2016.
● Part of the Co-organizers of the Winnipeg
Meetup.
● Your Moderator for the day.
Who am I?
5. 5
● Mariano Sanchez Zetina.
● Sr Expert Applications Decelopment at
Nestlé.
● MuleSoft Architect, Mentor and Meetup
Leader.
● An AWS and Azure Cloud Enthusiast,
Data Engineer with extensive knowledge
in Integration and EDA.
● Lives in Mexico City.
● Our Speaker for the day.
Our Speaker
8. 8
● if you interested in sharing your knowledge and
expertise.
● if you are interested in learning more about a
subject.
● if you know a Subject Matter Expert who is
interested in sharing their knowledge and expertise.
● Google Form:
https://forms.gle/UxZzLAwhj2e6FiCM9
Speaking at a Winnipeg Community Meetup
9. 9
● We are planning a Meetup in March 2024. Looking for Speakers.
○ https://t.ly/wpgmulesoftmeetup
● We plan to host our first in-person meetup for the year, in May 2024. We are
looking for local sponsors. If you are located in Winnipeg, and your company
is open to sponsor our meetup, please reach out to me directly.
○ Email: makpan93@gmail.com
Upcoming Meetups
12. AGENDA
● Introductions
● Let’s talk about “Async” concept
● What is Async API
● The advantages of Async API Specs
● Important concepts about Async specs
● The Async specification file
● Async API in Anypoint
13. Introductions
About the speaker
○ Around 10 years working as IT professional.
○ MuleSoft Mentor.
○ MuleSoft community leader in México City.
14. What is Async
The example of the support call center
●Scenario 1
The bank’s analyst take my call and ask me to wait
meanwhile He is creating a report on the new
charges made on my card after the investigation,
then the analyst proceed to cancel my card.
●Scenario 2
The bank´s analyst take my call and told me that
once He finishes his investigation He will send me a
report of the new charges (if there are), and he will
call me again to confirm me when my card´s
cancellation is done.
●Statement:
I lost my credit card and I’m calling to my bank’s call center in order to know if there are new charges and I want to
cancel my card.
15. What is Async
The example of the support call center
●Scenario 1
The bank’s analyst take my call and ask me to wait
meanwhile He is creating a report on the new
charges made on my card after the investigation,
then the analyst proceed to cancel my card.
●Scenario 2
The bank´s analyst take my call and told me that
once He finishes his investigation He will send me a
report of the new charges (if there are), and he will
call me again to confirm me when my card´s
cancellation is done.
●Statement:
I lost my credit card and I’m calling to my bank’s call center in order to know if there are new charges and I want to
cancel my card.
16. Sync vs Async
In terms of services
“Synchronous Communication”
Let's consider a client-server architecture where a client sends a request to a server and waits for a response before proceeding
“Asynchronous Communication”
Let's consider a publish-subscribe architecture where a publisher sends a message to multiple subscribers without waiting for their
responses.
17. Sync vs Async
In terms of services
“Synchronous Communication”
Let's consider a client-server architecture where a client sends a request to a server and waits for a response before proceeding
“Asynchronous Communication”
Let's consider a publish-subscribe architecture where a publisher sends a message to multiple subscribers without waiting for their
responses.
18. Advantages of Async Specifications
● Discoverability
● Governance
● Interoperability
● Open Source
● Protocol Agnostic
● Platform Agnostic
● Useful to describe
● Many Tools in the market
● Documentation
● Reusability
● Reduce
Implementation
times
19. Parts of the Async Specifications
Id
Servers (Brokers)
Channels (Topics)
Operation (Pub, Sub)
Summary
Message (event, record)
Headers Payload
Tags Ext Docs
Components
Schemas Security
Schemas
Messages Parameters
Correlation
Ids
Traits
Info
20. Use case
● Customer places an order through the Sales Application.
● The Sales Application publishes the order details as a message to a Kafka topic called "orders".
● The Order Processing Service and Inventory Management Service subscribe to the "orders" topic to receive order
messages.
● The Order Processing Service consumes the order message, processes the order, and updates the order status.
● If the order can be fulfilled, the Inventory Management Service is notified to update the stock levels accordingly.
● The Order Processing Service publishes the updated order status as a message to a Kafka topic called "order-status".
The processing orders system
21. Use case
● The Shipping Service subscribes to the "order-status" topic to receive order status messages.
● The Shipping Service consumes the order status message, prepares the order for shipping, and updates the shipping
status.
● The customer can track the order status through the Sales Application, which consumes the order status messages
from the "order-status" topic.
The processing orders system
22. Use case
The processing orders system
Customer Sales application Kafka service
Order Processing
service
Place order
Inventory management
service
Shipping service
Publish order
Consume order
Update Stock levels
“Orders” Topic
Process order
Publish order status
“Order-Status” Topic
Consume order status
Update Shipping status
31. Share
31
• Share Meetup in your social network.
• Give some kudos to our speaker on
LinkedIn
• Use Hashtags
– #MuleSoftMeetup
– #MuleSoftMeetupWinnipeg
• Instagram: @mulesoftmeetupwpg
Thank you
• Feedback:
• Fill out the survey feedback and suggest topics for
upcoming events
• Contact MuleSoft at meetups@mulesoft.com for
ways to improve the program