Database Reference
In-Depth Information
Event-Driven Architecture (EDA)
Service-Oriented Architecture (SOA) and Event-Driven Architecture (EDA) are two
complementary architectures for separating service consumers and producers. At
present, both architectures are being implemented together.
The following are the two architecture models available for interaction between ser-
vice consumers and producers:
• Request-driven interaction
• Event-driven interaction
Traditional service-oriented approach uses request-driven interaction. The event-driv-
en model provides loose coupling between consumers and producers compared to
the request-driven interaction model.
Inanevent-drivenSOA,insteadofpushingthedatatoaservice,theservicereadsthe
data from a common platform such as messaging. Usually, the services are loosely
coupled through service interfaces and use a common service bus.
Using the event-driven model, you can achieve loose coupling through the event-driv-
en interactions. Use a common messaging platform for reading the data. The invoca-
tion is triggered by an event.
For example, a file's arrival to a common SAN/NAS device or a specific data update
to a database could trigger an event.
Request-driven interaction
A typical service invocation is that of a service consumer invoking a service producer
through a common interface. The invocation can be done either directly through a
WSDL file, or through a service bus in the middle. As shown in the next figure, a ser-
vice consumer invokes a service producer through the service bus: