TENTANG EPISODE INI
Full episode notes: https://threedots.tech/episode/sync-vs-async/
Quick takeaways
- Start with synchronous architecture by default - it’s simpler to understand, debug, and maintain for most use cases
- Async architecture improves scalability and resilience - message queues and events help handle traffic spikes and failures
- Design matters more than the technology choice - tight coupling creates the same problems in both sync and async approaches
- Consider team experience - async architecture require more experienced teams and better tooling to handle new challenges
- Adjust as your system grows - external APIs, heavy operations, or the need to handle failures gracefully are good use cases
- Hybrid approach - use both sync and async where they fit best, rather than forcing one over the other
In this episode, we discuss when to choose synchronous versus asynchronous architecture for backend systems.
We talk about the trade-offs between simple, predictable sync communication and the complexity but resilience of async approaches using message queues and event-driven architecture.
Instead of picking one approach over another, we focus on understanding when each makes sense and how to avoid common pitfalls like distributed monoliths and over-engineering.
- Go Event-Driven training
- Watermill - our open-source Go library for working with message streams
- Event Storming - a design technique with a great unfinished ebook by Alberto Brandolini
- CQRS (Command Query Responsibility Segregation) - a pattern that works well with both sync and async approaches
- Our CQRS article and Server-Sent Events post
- Message brokers mentioned: RabbitMQ, Kafka, NATS, Google Cloud Pub/Sub
- Event schemas: Protobuf, Avro, CloudEvents
- Event Sourcing - a pattern mentioned in context of recreating state from events
- Clean Architecture/Hexagonal Architecture - architectural patterns mentioned for making sync/async migration easier
IntroductionShow Notes
Inggris
Amerika Serikat
TRANSKRIP 🔗
Are you the producer of this podcast?
Add a podcast transcript
Need Audio-to-Text?
Transcribe with Listen411 in Just 60 Seconds
CARI EPISODE TERDAHULU
Cari episode sebelumnya dari NO SILVER BULLET.
EPISODE LAIN DALAM PODCAST INI
Full episode notes: https://threedots.tech/episode/unpopular-opinions-about-go/
Quick takeaways
Simplicity isn’t enough for complex applications - while Go’s syntax is simple, complex applications still need proper design patterns; primitive code easily becomes spaghetti code in large projects.
R…
Full episode notes and transcript: https://threedots.tech/episode/is-clean-architecture-overengineering/
In this episode of the No Silver Bullet podcast, we discuss Clean Architecture and whether it's overengineering or a best practice for organizing code.We talk about why the pattern is often con…
In this episode, we discuss how to learn effectively as a software engineer. Why some people seem to learn faster than others? What are some practical ways to speed up your learning? Instead of promising magical shortcuts to becoming a principal engineer in months, we focus on a more balanced appro…
Episode notes: https://threedots.tech/episode/history-of-watermill/
Quick takeaways
Solve real problems first - successful open source projects start by addressing actual needs, not by looking for problems to fit a solution
Keep breaking changes minimal - Watermill stayed on v1 for 6 years with n…
Sanggahan: Podcast dan karya seni yang disematkan pada halaman ini berasal dari Three Dots Labs, yang merupakan milik pemiliknya dan tidak berafiliasi atau didukung oleh Listen Notes, Inc.
Sunting
Terima kasih telah membantu agar basis data podcast tetap terbaru