Wait or process later, synchronous and asynchronous
Choosing between a synchronous call and a message queue directly shapes what users experience when a service slows down. You learn to decide step by step along a user journey, anticipate delays, duplicates and failures, and describe in the spec the in-between states the interface must display.
Lesson objective
By the end of this lesson, you will be able to decide, for each step of a journey, whether it should be processed while the user waits or handed to a message queue, to anticipate duplicates, delays and failures, and to specify what the user sees in the meantime.
Topics covered
- synchronous vs asynchronous
- message queue
- event-driven architecture
- eventual consistency
- background processing
In the glossary
Where it fits
Structuring the system
Should the system be split up, and when should you wait for a response rather than process later?
Lessons in this module
- Monolith, modular monolith or microservices
- Wait or process later, synchronous and asynchronous (this lesson)
What you will learn in this module
This lesson is part of the course Read and challenge a technical architecture
- Compare monolith, modular monolith and microservices, then synchronous calls and asynchronous processing, based on the team, the load and the consequences for the user.
Related courses
- Product ManagementAdvancedRegular practice: you already use the tools or work on this topic.
Git for PMs: ship as a team without putting production at risk
3 hr 30 min
- Tech for PMsAll levelsNo prerequisites: accessible to everyone.
Explain how a web product works, from browser to server
2 hr 30 min
- Tech for PMsJuniorSome basics are useful: introductory knowledge of the topic.
Design and test an API integration as a PM
3 hr