Event-driven is about having modules which are communicating via messages (events and commands).
There's nothing that forces you to go microservices if you want to go event-driven. In fact, it's actually not needed in most cases.
Learn more at http://railsarchitects.com
9. You can go microservices without going event-driven
But that’s the worst possible choice 😂
10. You can go event-driven within one modulith
Best choice 💰
11. What about event stores or message buses?
Do we need external tools like Kafka or RabbitMQ?
NO 😡
In most cases that’s an overkill
12. All you need is some way of:
• publishing events (in memory)
• storing events (in db tables is fine)
13. RailsEventStore is exactly this
• Keeps events and streams in relational db (postgres is great,
mysql too)
• Helps with publishing events
14. Conclusion
• Don’t go for microservices
• Build a modulith
• Go event-driven and decouple modules
• Enjoy a simple infrastructure and great modularity