Home
Categories
EXPLORE
True Crime
Comedy
Society & Culture
Business
Sports
History
Music
About Us
Contact Us
Copyright
© 2024 PodJoint
00:00 / 00:00
Sign in

or

Don't have an account?
Sign up
Forgot password
https://is1-ssl.mzstatic.com/image/thumb/Podcasts221/v4/86/6d/3a/866d3a68-4b22-52a5-8ab9-f64daa13bf04/mza_15510450257039777025.jpg/600x600bb.jpg
Tech Book Podcast
Ai
13 episodes
5 days ago
Reviewing tech and engineering books and articles!
Show more...
Technology
RSS
All content for Tech Book Podcast is the property of Ai and is served directly from their servers with no modification, redirects, or rehosting. The podcast is not affiliated with or endorsed by Podjoint in any way.
Reviewing tech and engineering books and articles!
Show more...
Technology
https://d3t3ozftmdmh3i.cloudfront.net/staging/podcast_uploaded_episode/42046368/42046368-1727720140441-57c4a837a05bb.jpg
Practical Event-Driven Microservices Architecture by Hugo Filipe Oliveira
Tech Book Podcast
18 minutes 57 seconds
1 year ago
Practical Event-Driven Microservices Architecture by Hugo Filipe Oliveira

This episode explores the crucial, but often overlooked, aspect of data integrity in event-driven microservice architectures. Ensuring data remains consistent and reliable across distributed services can feel like navigating a minefield of potential pitfalls. We'll explore how to avoid those pitfalls.

Topics Covered:

● Why Concurrency Is Tricky (and How to Prevent Disaster): The shift from monolithic applications to distributed systems demands a fresh perspective on handling concurrency. Discover why traditional approaches fall short and explore practical strategies:

○Pessimistic Concurrency: Learn how techniques like database locks and distributed consensus algorithms (e.g., using tools like ZooKeeper) can prevent conflicts before they occur.

○Optimistic Concurrency: This approach, often favored for its performance benefits, relies on detecting conflicts and applying retries or compensation strategies. Understand how versioning and conditional updates play a vital role.

●Out-of-Order Messages: Taming the Chaos: In an asynchronous world, messages don't always arrive in the order you expect. We'll examine techniques to handle these situations gracefully:

○Event Versioning: Discover how assigning versions to events can help services identify and address inconsistencies caused by out-of-order processing.

○End-to-End Partitioning: By carefully routing related events to the same partitions within a message broker, you can enforce ordering and simplify concurrency management. We'll explore the benefits and potential challenges of this approach.

●Resilience Strategies: Building fault-tolerant systems is crucial in a distributed environment. We'll examine key patterns for achieving resilience:

○Idempotency: Learn how to design services that can handle the same message multiple times without creating unintended side effects. We'll discuss common patterns and how they apply to event-driven systems.

○The Outbox Pattern: Discover how this technique ensures events are published reliably, even in the face of database or network failures. We'll walk through a practical example of implementing an outbox using a dedicated database table.


Support: ⁠https://yazdipour.com/donate⁠

Tech Book Podcast
Reviewing tech and engineering books and articles!