3 ms·
Ask HN: Are any new systems *not* event sourced and microservices?
At present, it seems that every new system being spun up follows the event sourced / microservices pattern. I've heard the case made from many different corners. Cool though they are, this design tends to lead to increased complexity / cognitive load at an early stage.
It got me wondering, are people out there spinning up new systems and internationally not following that pattern?
I'm trying to understand if a sea change in architecture has occurred or whether I'm in a bubble and not appreciating all the different approaches that are generally being used in the industry today.
- tornadofart 4y agoShort answer: yes. Long answer: The problems with distributed systems are plenty and are only worth it if the distribution itself is a key feature, because for example your system has to scale for millions of users around the world.
- nivertech 4y agoYou're right about microservices, but IMO you're mistaken Event Sourcing (CQRS/ES)[1,2] with EDA (Event-Driven Architectures)[3] in general. There are many different types of EDAs. There are at least 3 relevant dimensions when choosing a Software Architecture: 1. complexity of the domain 2. scalability requirements 3. company stage / number of developers working on the same codebase Microservices are mostly solving #3, and to a lesser extent #2. They mostly solve the problem of too many developers blocking each other on a monolithic codebase (NOTE: monolithic doesn't mean non-modular). Event Sourcing and friends (DDD, CQRS, EventStorming, etc.) are mostly solving #1. It's also technology/vendor-agnostic, so makes migration to other tech (including microservices) easier, and most importantly possible at all. So for a complex domain in a small company I would choose a CQRS/ES monolith, but for a simple domain and high scalability in a large company maybe CRUD-based microservices are making more sense. -- [1] https://martinfowler.com/eaaDev/EventSourcing.html https://martinfowler.com/eaaDev/EventSourcing.html [2] https://martinfowler.com/bliki/CQRS.html https://martinfowler.com/bliki/CQRS.html [3] The Many Meanings of Event-Driven Architecture • Martin Fowler • GOTO 2017 https://www.youtube.com/watch?v=STKCRSUsyP0 https://www.youtube.com/watch?v=STKCRSUsyP0 What do you mean by “Event-Driven”? https://martinfowler.com/articles/201701-event-driven.html https://martinfowler.com/articles/201701-event-driven.html tagged by: event architectures https://martinfowler.com/tags/event%20architectures.html https://martinfowler.com/tags/event%20architectures.html