InfoQ Homepage Event Driven Architecture Content on InfoQ
-
The Basics of Event Sourcing and Some CQRS
State transitions are an important part of our problem space and should be modelled within our domain, Greg Young states in a recent presentation focusing on basic event sourcing and how CQRS fits in.
-
Microservices vs Shared Libraries
Robert C. Martin's advice is to start with shared libraries and a plugin architecture and only when that becomes insufficient consider microservices. Giorgio Sironi argues against this, emphasising how different interactions between microservices are compared to interactions between objects and warns for the cost of retrofitting microservices over an existing code base.
-
Building a Reactive Process Manager Using Actor Model
Vaughn Vernon describes a reactive process manager supervising the process of finding the best loan quotes from banks with a focus on the reactive part, using Actor model for the implementation with examples written in Scala using Akka and C# using his recently published Dotsero toolkit.
-
Experiences Building a Reactive Event-Driven CQRS Application
CQRS and Event Sourcing provide a clear and concise way to build distributed applications that adhere to the reactive manifesto, Duncan DeVore claimed in a recent presentation sharing his experiences building a distributed application using Akka and Scala.
-
Lessons Learned Building Distributed Systems at Bitly
At the Bacon Conference last May, bitly Lead Application Developer Sean O'Connor explained the most relevant lessons bitly developers learned while building a distributed system that handles 6 billions clicks per month.
-
Building a Reactive DDD and CQRS Based Application Using Akka
DDD and CQRS are great for building scalable software considering concepts like bounded contexts, transaction boundaries and event based communication and is together with Akka a complete platform for building enterprise applications, Pawel Kaczor starts a three-part series building an reactive application based on these concepts.
-
Greg Young: Scheduling for Things to Happen in the Future
Delay of message sending into the future is a very powerful pattern and is often the preferable way of dealing with temporal problems compared to batch job that will run a query on the domain model and update some aggregates, Greg Young explained at the recent DDD Exchange conference in London.
-
Microservices: Usage Is More Important than Size
Using size for defining microservices is useless when determining a service responsibility, Jeppe Cramon states in a series of blog posts explaining his view on microservices and the coupling problems he finds in synchronous two-way communication.
-
Scalability in a Reactive World
We have to maximize locality of reference and minimize contention to make systems scale, Jonas Bonér, creator of the Akka project, stated in a recent presentation about scalability in reactive systems. By using a share nothing architecture, build on an event-driven foundation and adhering to core principles that have been proven to work for ages we can write really scalable systems.
-
Udi Dahan on Event-Driven Architecture and Loosely Coupled Systems
We should build systems more loosely coupled to achieve properties like robustness, resilience and scalability, Udi Dahan emphasizes in a recent presentation discussing how we can model our systems using more event-driven and asynchronous patterns and some of the challenges developers face when introducing these principles and patterns into development.
-
Akka Actors vs. Java EJBs from a High-Level Concurrency Perspective
There are both commonalities and some differences when comparing architectural principles and coding styles in Akka Actors and Java EE 7 Enterprise JavaBeans, specifically stateless session beans and JMS message-driven beans, Dr Gerald Loeffler concludes in a recent introductory talk when explaining and comparing the three approaches from a high-level concurrency view.
-
CQRS Framework Axon 2.1 with Increased Event Handler Support and Performance Improvements
Version 2.1 of CQRS framework Axon supports annotations and ordering of event handlers, a new conflict resolution together with performance improvements. The recently released version also adds compatibility with OSGi.
-
Greg Young on Using Complex Event Processing
Complex Event Processing, CEP, can be very useful for problems that have to do with time e.g. querying over historical data when you want to correlate things that have happened at different times, Greg Young explained in a recent presentation.
-
Vaughn Vernon: Reactive Domain-Driven Design
Vaughn Vernon, author of Implementing Domain-Driven Design, recently talked about using Scala and the Actor Model implementation Akka together with Doman-Driven Design as a means to remove some of the architecture overhead typically found in event-driven or hexagonal architectures.
-
Pivotal's Reactor Goes GA
This week, Pivotal released version 1.0 of its project Reactor for general availability. Reactor provides low-level abstractions for an event-driven, reactive programming model, and is a component member of the Spring IO Platform in its "IO Foundation" layer.