Search results for
What is Event-Driven Architecture?
Event-driven architecture is a software paradigm in which services and applications communicate asynchronously through publishing and consuming events. An event is anything that happens in a business environment or their customers’ ecosystem.
An obvious advantage is that services can be decoupled because of the asynchronous communication. This means they no longer need to rely on each other for scaling and don’t impact other services in case of failure.
Working with events also makes real-time data processing possible from several sources: not just software applications and services, but all kinds of IoT devices as well.Read more
Is Kafka Event-Driven Architecture?
It is not. Though an event hub such as Kafka is an essential component in an Event-Driven architecture.
Why choose Event-Driven Architecture?
Using Event-Driven Architecture has proven to have numerous benefits for both business and IT environments. An obvious advantage is that services can be decoupled because of the asynchronous communication. This means they no longer need to rely on each other for scaling and don’t impact other services in case of failure. During development teams can independently deploy new features or improve their service.
Working with events also makes real-time data processing possible, originating from different sources: not just software applications and services, but all kinds of IoT devices as well. Organisations will be able to make more and quicker decisions, based on data they can trust. By increasing responsiveness, companies can innovate faster and set themselves apart from the competition.
What is Event-Driven Architecture used for?
An Event-Driven Architecture is often used to integrate applications that need to process a large number of messages in real-time, such as financial trading systems, social media applications, and gaming platforms.
However, an Event-Driven Architecture is especially strong in capturing business behaviour. Structured business events are produced and can be stored for a long time. More and more organisations are realising that this behavioural data is very valuable. The question is not ‘if’ you need this data, it is ‘when’. The data can be used to integrate applications while keeping them loosely coupled, for learning, automated decision making and real-time analytics. By comparison, in traditional architectures such as SOA this would not be possible because of lack of data, or it would at least require a lot of additional work.
Why does Event-Driven Architecture improve scalability / flexibility?
A distributed event-handling architecture can scale as the number of entities generating events increases. Processing of the events in a topic is handled by consumers that can individually scale horizontally up to the number of partitions of that topic. The number of partitions is important to guarantee ordering. In other words, consumers have the flexibility to process the data at their own pace
What is an event (in Event-Driven Architecture)?
An event is anything that happens in a business environment or their customers’ ecosystem.Read our blog
What are the risks, challenges and disadvantages of Event-Driven Architecture?
An Event-Driven Architecture introduces new patterns and concepts such as asynchronous processing, eventual consistency, read models. This might introduce some technical challenges if you don’t have experience with those.
The handling of errors is more intricate, it’s important to make sure events are always produced, not in a separate transaction. Eventual consistency means less predictability for timing, but also better scalability and faster systems in general.
Storing event logs for a longer time is supported by most event hubs, which means a backup solution or an active-passive cluster setup needs to be set up.
Didn't find what you are looking for?
Frequent search queries
Event-driven architectureEvent-driven architecture