Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

EDA – Event Driven Architecture

DZone's Guide to

EDA – Event Driven Architecture

· Java Zone ·
Free Resource

Verify, standardize, and correct the Big 4 + more– name, email, phone and global addresses – try our Data Quality APIs now at Melissa Developer Portal!

Event-driven architecture (EDA) is a push-based communication between publisher and consumer, which predominantly use for proactive notification in real time environment.
For e.g. Fraud notification from credit card Company, shipping, order fulfillment etc.
EDA use to communicate with consumer with minimum or no delay and avoid busy-wait thread stats.
EAD is a style of application architecture can be implemented in any language, which can improve responsiveness, throughput and flexibility.

An EDA is extremely loosely coupled than client/server paradigm because the publisher doesn’t know the identity of the consumers. This leads to an implementation which is easier to extend, evolve and maintain, giving you more flexibility and reducing maintenance cost.

EAD
Listener acts as asynchronous receiver, which automatically receives messages as they’re delivered on the channel.

Benefits:
1. EAD utilize existing resource efficiently.
2. This leads to an implementation which is easier to extend, evolve and maintain, giving you more flexibility and reducing maintenance cost.
3. This results in lower operational costs, increased utilization and happier end-users.
4. There is no direct coupling between the publisher and the consumer i.e. loosely coupled
5. Prevent block or wait in queue

Conclusion:
Business needs to make more responsiveness and react to certain situation as they occur. An Event Driven Architecture (EAD) monitor changes in state and respond it in real time. Some scenario where need quick reaction we could use EDA, while other areas still pull and scheduled pattern could be used. The main point is to understand the use case scenario and advantage on it before using EDA.

References:

http://en.wikipedia.org/wiki/Event-driven_architecture

http://www.eaipatterns.com

http://www.reactivemanifesto.org/

http://en.wikipedia.org/wiki/Observer_pattern

Developers! Quickly and easily gain access to the tools and information you need! Explore, test and combine our data quality APIs at Melissa Developer Portal – home to tools that save time and boost revenue. Our APIs verify, standardize, and correct the Big 4 + more – name, email, phone and global addresses – to ensure accurate delivery, prevent blacklisting and identify risks in real-time.

Topics:

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}