Abstract
This talk explores how to use Go and NATS JetStream to implement scalable micro-services based on event-driven architectures.
We'll start with a foundational overview of event-driven architectures, highlighting their benefits for system design, such as improved responsiveness and component decoupling.
We will then introduce NATS JetStream, an advanced messaging system that serves as a pure Go alternative to the well-known Kafka project. We will focus not only on the code but also on the reasons why we prefer NATS over Kafka, emphasizing its simplicity in deployment and lightweight nature.
The session will include some code snippets to provide a hands-on demonstration of these concepts. I'll demonstrate how easy is to implement a projects using NATS Jetstream, focusing on real-time event publishing and handling, with an emphasis on testing, best practices, and key takeaways.
Talk Outline
- introduction
- why migrating from Kafka?
- code Examples
- conclusions