SlideShare a Scribd company logo
1 of 42
Download to read offline
September 2015
Event Driven Architecture
Shiroshica Kulatilake
Solutions Architect
Agenda
• What’s Event Driven Architecture ?
• Why Event Driven Architecture ?
• How Event Driven Architecture can be done in the
enterprise ?
• How WSO2 supports Event Driven Architecture
Event Driven Architecture
Scenario : Health Care System
Scenario : Health Care System
Typical happenings
• A new patient registration
• Patient data update
• Patient payment
• Start a laboratory test
• Availability of laboratory results for a patient
• Revocation of insurance policy
• Drug outage
• etc …
Generalized View
Event Driven Architecture
Main Components of EDA
Main Components
• Event - entity depicting something which happened
• Event generator - entity which creates and pushes the
event
• Event channel - medium where the event lies before
consumption
• Event consumer - entity which consumes the event from
the channel
Event
• An event is a piece of information that may be applicable to
one or more objects at a given time
• An event would be
- self contained
- unique
- time relevant
• An event will propose
- a problem
- an opportunity
- a threshold
- a deviation, to its consumer
• Resulting action due to the occurrence of an event could be
- invocation of a service
- triggering a business process
- publishing of another event
Event Generators, Consumers &
Channel
• Event Generators
- publish events in the form of messages
- have no idea who would consume the message
- have no idea about the consequence of the messages
generated
• Event Consumers
- subscribe to published events
- handles events in an asynchronous manner
- oblivious to other consumers
• Event Channel
- acts as the mediator
- handles subscriptions
- handles storage and delivery
What is Event Driven Architecture
• It’s a way of building solutions based on the generation,
reception, processing and sending of events
• Events flow between decoupled services and
components
- Generators and Consumers are oblivious to each other
• Used for building extensible complex distributed systems
which are governed by asynchronous events
- There is no command and control structure
- No request and response mechanisms
What EDP brings to an Architecture
• Event hierarchies and fine grainedness
• Self describing nature of the event payload
• No special packing for each receiver
• Multiple receivers for a single event
• Responsibility of handling state is with the consumer
• Anonymity when sending an event
• Real time sending of events
• Async nature of delivery
• Guaranteed delivery
What EDP removes from an
Architecture
• Co-ordination
• Pre-planned continuity
• Global context with the latest status
• These only work where
- the individual executions are fast
- Actions only happen in a pre-defined order which
does not change frequently
- There is a fixed number of parties involved which the
primary orchestrator knows of
EDA in the Enterprise
Non-EDA based Health Care
System
Non-EDA Enterprise Integration
• Collection of Loosely coupled modules
• Enterprise Service Bus to manage the various point to
point integrations
• Business Process Server to do process flows
• Application servers to host the various services
• Central process handling
- via ESB
- via the BPS
Zooming on the centralized core
Predictive
Behaviour
Linear
Process
Flow
Centralized
Control
Request
Response
Based
Loosely
Coupled
What would EDA bring in
• Looser coupled flows
• Messages are self contained and follow a hierarchy
which helps to subscribe at the correct level
• No time is lost between occurrence and sending of the
event
• Asynchronous nature of event delivery
• Guaranteed delivery makes things more reliable
• Multiple event and multiple event stream processing
Why should an enterprise use EDA
• Enhances the ability to easily plug in more modules as
either event generators or consumers
• Asynchronous nature brings in the ability to design
solutions at run time by getting rid of linear flows
• Brings in the ability for reactive behaviour which suits
situations which need quick reactions
• Can add in more dimensions like monitoring, event
processing for overall system health as well as for
functionality purposes
• Capability to replay events if needed to either simulate,
when state needs to be recreated etc.
EDA based Enterprise System
Service Bus
Message Broker
Mediation Bus
End Service
Business
Process
Service Bus
Application
Event Management
It’s not a silver bullet ...
• There will be less build-time validation
• EDA creates rapidly evolving solutions
- too rapid ?
- how to keep track of ?
- how to debug ?
• Need of additional tools to figure out how things work
- Visualization tools needed for debugging
- Simulation tools needed for testing
EDA with WSO2 products
Components in an EDA setting
Components in an EDA setting
• Message Broker
- supports the various event based messaging patterns
- Queues/ Topics etc for pub/sub and P2P
- supports reliable message delivery
• Mediation / Service Bus
- brings together the different parties
- generates new events when needed
- can interact with non event based systems
- for business agility event messages would go through ESBs
- when it enters the ESB then would go through EIPs
• Business Process server
- deal with business flows that are triggered when an event occurs
- graphical editor to create the process
Messaging with WSO2 ESB
Messaging with WSO2 ESB
Components in an EDA setting
• Data Services Server
- create a service abstraction which can be used for events which
need to interact with data
• Registry
- provides the configuration repository
• Identity and Access Manager
- Authentication, authorization and handling fine grained access
control
Components in an EDA setting
• Activity Monitor
- for monitoring of all activity that goes around
- end to end business message flow monitoring
- identifying, collecting and tracing business transactions
- deriving KPIs from these stats
- taking decisions on these
• Complex Event Processor
- for multiple event and multiple event stream processing
- to go through event sequences and then detecting special events
(threats, opportunities, action points)
- for creating events as results
- for creating alerts
- for pattern detection which could be used for other purposes
Integrating with WSO2 DAS
Integrating with WSO2 CEP
EDA Reference Architecture - L0
EDA Reference Architecture - L1
EDA in Action
EDA based Health Care Scenario
EDA for Health Care with WSO2
FAQs
FAQ
• Is EDA pushing away SOA ?
- No, it still supports loose couple of services but
promotes more run time application definition, with
asynchronous components which act in a reactive
manner - It complements SOA
• Is EDA different to MOM ?
- EDA uses Message Oriented Middleware
infrastructure as the foundation
• Where does EIP stand with EDA ?
- The Enterprise Integration Patterns is about patterns
to integrate enterprise systems. Messaging is one and
the concepts in messaging are used in EDA
EIP - Messaging Patterns
Connect the WorldConnect the World

More Related Content

What's hot

Event Driven Architecture (EDA) Reference Architecture
Event Driven Architecture (EDA) Reference ArchitectureEvent Driven Architecture (EDA) Reference Architecture
Event Driven Architecture (EDA) Reference ArchitectureBob Rhubart
 
Event Driven Microservices architecture
Event Driven Microservices architectureEvent Driven Microservices architecture
Event Driven Microservices architectureNikhilBarthwal4
 
Building Event Driven Systems
Building Event Driven SystemsBuilding Event Driven Systems
Building Event Driven SystemsWSO2
 
Event-driven microservices
Event-driven microservicesEvent-driven microservices
Event-driven microservicesAndrew Schofield
 
Microservices Part 3 Service Mesh and Kafka
Microservices Part 3 Service Mesh and KafkaMicroservices Part 3 Service Mesh and Kafka
Microservices Part 3 Service Mesh and KafkaAraf Karsh Hamid
 
Event Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQEvent Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQAraf Karsh Hamid
 
Microservices with event source and CQRS
Microservices with event source and CQRSMicroservices with event source and CQRS
Microservices with event source and CQRSMd Ayub Ali Sarker
 
Event Driven Architecture (EDA) Reference Architecture | Anbu Krishnaswamy
Event Driven Architecture (EDA) Reference Architecture | Anbu KrishnaswamyEvent Driven Architecture (EDA) Reference Architecture | Anbu Krishnaswamy
Event Driven Architecture (EDA) Reference Architecture | Anbu KrishnaswamyBob Rhubart
 
What is Application Performance Management?
What is Application Performance Management?What is Application Performance Management?
What is Application Performance Management?CA Technologies
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice ArchitectureNguyen Tung
 
Understanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We DoUnderstanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We DoSalesforce Developers
 
Microservices for Enterprises
Microservices for Enterprises Microservices for Enterprises
Microservices for Enterprises Kasun Indrasiri
 
Microservices, Containers, Kubernetes, Kafka, Kanban
Microservices, Containers, Kubernetes, Kafka, KanbanMicroservices, Containers, Kubernetes, Kafka, Kanban
Microservices, Containers, Kubernetes, Kafka, KanbanAraf Karsh Hamid
 
Understanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootUnderstanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootKashif Ali Siddiqui
 
Domain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and MicroservicesDomain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and MicroservicesRadosław Maziarka
 

What's hot (20)

Event-driven Architecture
Event-driven ArchitectureEvent-driven Architecture
Event-driven Architecture
 
Event Driven Architecture (EDA) Reference Architecture
Event Driven Architecture (EDA) Reference ArchitectureEvent Driven Architecture (EDA) Reference Architecture
Event Driven Architecture (EDA) Reference Architecture
 
Event Driven Microservices architecture
Event Driven Microservices architectureEvent Driven Microservices architecture
Event Driven Microservices architecture
 
Building Event Driven Systems
Building Event Driven SystemsBuilding Event Driven Systems
Building Event Driven Systems
 
Event-driven microservices
Event-driven microservicesEvent-driven microservices
Event-driven microservices
 
Microservices Part 3 Service Mesh and Kafka
Microservices Part 3 Service Mesh and KafkaMicroservices Part 3 Service Mesh and Kafka
Microservices Part 3 Service Mesh and Kafka
 
Event Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQEvent Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQ
 
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
 
Microservices with event source and CQRS
Microservices with event source and CQRSMicroservices with event source and CQRS
Microservices with event source and CQRS
 
Event Driven Architecture (EDA) Reference Architecture | Anbu Krishnaswamy
Event Driven Architecture (EDA) Reference Architecture | Anbu KrishnaswamyEvent Driven Architecture (EDA) Reference Architecture | Anbu Krishnaswamy
Event Driven Architecture (EDA) Reference Architecture | Anbu Krishnaswamy
 
What is Application Performance Management?
What is Application Performance Management?What is Application Performance Management?
What is Application Performance Management?
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Understanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We DoUnderstanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We Do
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Microservices for Enterprises
Microservices for Enterprises Microservices for Enterprises
Microservices for Enterprises
 
Microservices, Containers, Kubernetes, Kafka, Kanban
Microservices, Containers, Kubernetes, Kafka, KanbanMicroservices, Containers, Kubernetes, Kafka, Kanban
Microservices, Containers, Kubernetes, Kafka, Kanban
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
Understanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootUnderstanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring Boot
 
Domain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and MicroservicesDomain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and Microservices
 

Similar to Event-Driven Architecture (EDA)

Event Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling MicroservicesEvent Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling MicroservicesBradley Irby
 
Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018Bradley Irby
 
Event Driven Architectures
Event Driven ArchitecturesEvent Driven Architectures
Event Driven ArchitecturesAvinash Ramineni
 
Introducing Ironstream Support for ServiceNow Event Management
Introducing Ironstream Support for ServiceNow Event Management Introducing Ironstream Support for ServiceNow Event Management
Introducing Ironstream Support for ServiceNow Event Management Precisely
 
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...apidays
 
Event Driven Architectures - Phoenix Java Users Group 2013
Event Driven Architectures - Phoenix Java Users Group 2013Event Driven Architectures - Phoenix Java Users Group 2013
Event Driven Architectures - Phoenix Java Users Group 2013clairvoyantllc
 
It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integrat...
It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integrat...It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integrat...
It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integrat...Lucas Jellema
 
Directions Asia Unlocking New Integration Potential for d365 BC with Event ...
Directions Asia   Unlocking New Integration Potential for d365 BC with Event ...Directions Asia   Unlocking New Integration Potential for d365 BC with Event ...
Directions Asia Unlocking New Integration Potential for d365 BC with Event ...Wagner Silveira
 
Are processes masquerading as projects hurting your business
Are processes masquerading as projects hurting your businessAre processes masquerading as projects hurting your business
Are processes masquerading as projects hurting your businessBen Bradley
 
Building cloud native data microservice
Building cloud native data microserviceBuilding cloud native data microservice
Building cloud native data microserviceNilanjan Roy
 
Partner Transformation for Hybrid Cloud Management
Partner Transformation for Hybrid Cloud ManagementPartner Transformation for Hybrid Cloud Management
Partner Transformation for Hybrid Cloud ManagementVistara
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecturegulimran
 
Systemology presentation- System Center & the modern datacenter
Systemology presentation- System Center & the modern datacenterSystemology presentation- System Center & the modern datacenter
Systemology presentation- System Center & the modern datacenterjmustac
 
2 speed it powered by microsoft azure
2 speed it powered by microsoft azure2 speed it powered by microsoft azure
2 speed it powered by microsoft azureMichael Stephenson
 
SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events
SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended EventsSQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events
SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Eventssqlserver.co.il
 
RuSIEM overview (english version)
RuSIEM overview (english version)RuSIEM overview (english version)
RuSIEM overview (english version)Olesya Shelestova
 
[WSO2Con EU 2017] Darwin Ate My App
[WSO2Con EU 2017] Darwin Ate My App[WSO2Con EU 2017] Darwin Ate My App
[WSO2Con EU 2017] Darwin Ate My AppWSO2
 

Similar to Event-Driven Architecture (EDA) (20)

Event Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling MicroservicesEvent Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling Microservices
 
Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018
 
Event Driven Architectures
Event Driven ArchitecturesEvent Driven Architectures
Event Driven Architectures
 
Introducing Ironstream Support for ServiceNow Event Management
Introducing Ironstream Support for ServiceNow Event Management Introducing Ironstream Support for ServiceNow Event Management
Introducing Ironstream Support for ServiceNow Event Management
 
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
 
Event Driven Architectures - Phoenix Java Users Group 2013
Event Driven Architectures - Phoenix Java Users Group 2013Event Driven Architectures - Phoenix Java Users Group 2013
Event Driven Architectures - Phoenix Java Users Group 2013
 
It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integrat...
It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integrat...It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integrat...
It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integrat...
 
Telecom OSS/BSS - Automation
Telecom OSS/BSS - Automation Telecom OSS/BSS - Automation
Telecom OSS/BSS - Automation
 
Directions Asia Unlocking New Integration Potential for d365 BC with Event ...
Directions Asia   Unlocking New Integration Potential for d365 BC with Event ...Directions Asia   Unlocking New Integration Potential for d365 BC with Event ...
Directions Asia Unlocking New Integration Potential for d365 BC with Event ...
 
Are processes masquerading as projects hurting your business
Are processes masquerading as projects hurting your businessAre processes masquerading as projects hurting your business
Are processes masquerading as projects hurting your business
 
Building cloud native data microservice
Building cloud native data microserviceBuilding cloud native data microservice
Building cloud native data microservice
 
Partner Transformation for Hybrid Cloud Management
Partner Transformation for Hybrid Cloud ManagementPartner Transformation for Hybrid Cloud Management
Partner Transformation for Hybrid Cloud Management
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
Oi
OiOi
Oi
 
Systemology presentation- System Center & the modern datacenter
Systemology presentation- System Center & the modern datacenterSystemology presentation- System Center & the modern datacenter
Systemology presentation- System Center & the modern datacenter
 
2 speed it powered by microsoft azure
2 speed it powered by microsoft azure2 speed it powered by microsoft azure
2 speed it powered by microsoft azure
 
SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events
SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended EventsSQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events
SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events
 
RuSIEM overview (english version)
RuSIEM overview (english version)RuSIEM overview (english version)
RuSIEM overview (english version)
 
[WSO2Con EU 2017] Darwin Ate My App
[WSO2Con EU 2017] Darwin Ate My App[WSO2Con EU 2017] Darwin Ate My App
[WSO2Con EU 2017] Darwin Ate My App
 
Micro service architecture
Micro service architecture  Micro service architecture
Micro service architecture
 

More from WSO2

Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
How to Create a Service in Choreo
How to Create a Service in ChoreoHow to Create a Service in Choreo
How to Create a Service in ChoreoWSO2
 
Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023WSO2
 
Platform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzurePlatform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzureWSO2
 
GartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfGartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfWSO2
 
[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in MinutesWSO2
 
Modernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityModernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityWSO2
 
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...WSO2
 
CIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfCIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfWSO2
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoWSO2
 
Fueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsFueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsWSO2
 
A Reference Methodology for Agile Digital Businesses
 A Reference Methodology for Agile Digital Businesses A Reference Methodology for Agile Digital Businesses
A Reference Methodology for Agile Digital BusinessesWSO2
 
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)WSO2
 
Lessons from the pandemic - From a single use case to true transformation
 Lessons from the pandemic - From a single use case to true transformation Lessons from the pandemic - From a single use case to true transformation
Lessons from the pandemic - From a single use case to true transformationWSO2
 
Adding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesAdding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesWSO2
 
Building a Future-ready Bank
Building a Future-ready BankBuilding a Future-ready Bank
Building a Future-ready BankWSO2
 
WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2
 
[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIsWSO2
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native DeploymentWSO2
 
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”WSO2
 

More from WSO2 (20)

Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
How to Create a Service in Choreo
How to Create a Service in ChoreoHow to Create a Service in Choreo
How to Create a Service in Choreo
 
Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023
 
Platform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzurePlatform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on Azure
 
GartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfGartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdf
 
[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes
 
Modernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityModernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos Identity
 
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
 
CIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfCIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdf
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing Choreo
 
Fueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsFueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected Products
 
A Reference Methodology for Agile Digital Businesses
 A Reference Methodology for Agile Digital Businesses A Reference Methodology for Agile Digital Businesses
A Reference Methodology for Agile Digital Businesses
 
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
 
Lessons from the pandemic - From a single use case to true transformation
 Lessons from the pandemic - From a single use case to true transformation Lessons from the pandemic - From a single use case to true transformation
Lessons from the pandemic - From a single use case to true transformation
 
Adding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesAdding Liveliness to Banking Experiences
Adding Liveliness to Banking Experiences
 
Building a Future-ready Bank
Building a Future-ready BankBuilding a Future-ready Bank
Building a Future-ready Bank
 
WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021
 
[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment
 
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
 

Recently uploaded

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 

Recently uploaded (20)

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 

Event-Driven Architecture (EDA)

  • 1. September 2015 Event Driven Architecture Shiroshica Kulatilake Solutions Architect
  • 2. Agenda • What’s Event Driven Architecture ? • Why Event Driven Architecture ? • How Event Driven Architecture can be done in the enterprise ? • How WSO2 supports Event Driven Architecture
  • 4. Scenario : Health Care System
  • 5. Scenario : Health Care System
  • 6. Typical happenings • A new patient registration • Patient data update • Patient payment • Start a laboratory test • Availability of laboratory results for a patient • Revocation of insurance policy • Drug outage • etc …
  • 10. Main Components • Event - entity depicting something which happened • Event generator - entity which creates and pushes the event • Event channel - medium where the event lies before consumption • Event consumer - entity which consumes the event from the channel
  • 11. Event • An event is a piece of information that may be applicable to one or more objects at a given time • An event would be - self contained - unique - time relevant • An event will propose - a problem - an opportunity - a threshold - a deviation, to its consumer • Resulting action due to the occurrence of an event could be - invocation of a service - triggering a business process - publishing of another event
  • 12. Event Generators, Consumers & Channel • Event Generators - publish events in the form of messages - have no idea who would consume the message - have no idea about the consequence of the messages generated • Event Consumers - subscribe to published events - handles events in an asynchronous manner - oblivious to other consumers • Event Channel - acts as the mediator - handles subscriptions - handles storage and delivery
  • 13. What is Event Driven Architecture • It’s a way of building solutions based on the generation, reception, processing and sending of events • Events flow between decoupled services and components - Generators and Consumers are oblivious to each other • Used for building extensible complex distributed systems which are governed by asynchronous events - There is no command and control structure - No request and response mechanisms
  • 14. What EDP brings to an Architecture • Event hierarchies and fine grainedness • Self describing nature of the event payload • No special packing for each receiver • Multiple receivers for a single event • Responsibility of handling state is with the consumer • Anonymity when sending an event • Real time sending of events • Async nature of delivery • Guaranteed delivery
  • 15. What EDP removes from an Architecture • Co-ordination • Pre-planned continuity • Global context with the latest status • These only work where - the individual executions are fast - Actions only happen in a pre-defined order which does not change frequently - There is a fixed number of parties involved which the primary orchestrator knows of
  • 16. EDA in the Enterprise
  • 17. Non-EDA based Health Care System
  • 18. Non-EDA Enterprise Integration • Collection of Loosely coupled modules • Enterprise Service Bus to manage the various point to point integrations • Business Process Server to do process flows • Application servers to host the various services • Central process handling - via ESB - via the BPS
  • 19. Zooming on the centralized core Predictive Behaviour Linear Process Flow Centralized Control Request Response Based Loosely Coupled
  • 20. What would EDA bring in • Looser coupled flows • Messages are self contained and follow a hierarchy which helps to subscribe at the correct level • No time is lost between occurrence and sending of the event • Asynchronous nature of event delivery • Guaranteed delivery makes things more reliable • Multiple event and multiple event stream processing
  • 21. Why should an enterprise use EDA • Enhances the ability to easily plug in more modules as either event generators or consumers • Asynchronous nature brings in the ability to design solutions at run time by getting rid of linear flows • Brings in the ability for reactive behaviour which suits situations which need quick reactions • Can add in more dimensions like monitoring, event processing for overall system health as well as for functionality purposes • Capability to replay events if needed to either simulate, when state needs to be recreated etc.
  • 22. EDA based Enterprise System Service Bus Message Broker Mediation Bus End Service Business Process Service Bus Application
  • 24. It’s not a silver bullet ... • There will be less build-time validation • EDA creates rapidly evolving solutions - too rapid ? - how to keep track of ? - how to debug ? • Need of additional tools to figure out how things work - Visualization tools needed for debugging - Simulation tools needed for testing
  • 25. EDA with WSO2 products
  • 26. Components in an EDA setting
  • 27. Components in an EDA setting • Message Broker - supports the various event based messaging patterns - Queues/ Topics etc for pub/sub and P2P - supports reliable message delivery • Mediation / Service Bus - brings together the different parties - generates new events when needed - can interact with non event based systems - for business agility event messages would go through ESBs - when it enters the ESB then would go through EIPs • Business Process server - deal with business flows that are triggered when an event occurs - graphical editor to create the process
  • 30. Components in an EDA setting • Data Services Server - create a service abstraction which can be used for events which need to interact with data • Registry - provides the configuration repository • Identity and Access Manager - Authentication, authorization and handling fine grained access control
  • 31. Components in an EDA setting • Activity Monitor - for monitoring of all activity that goes around - end to end business message flow monitoring - identifying, collecting and tracing business transactions - deriving KPIs from these stats - taking decisions on these • Complex Event Processor - for multiple event and multiple event stream processing - to go through event sequences and then detecting special events (threats, opportunities, action points) - for creating events as results - for creating alerts - for pattern detection which could be used for other purposes
  • 37. EDA based Health Care Scenario
  • 38. EDA for Health Care with WSO2
  • 39. FAQs
  • 40. FAQ • Is EDA pushing away SOA ? - No, it still supports loose couple of services but promotes more run time application definition, with asynchronous components which act in a reactive manner - It complements SOA • Is EDA different to MOM ? - EDA uses Message Oriented Middleware infrastructure as the foundation • Where does EIP stand with EDA ? - The Enterprise Integration Patterns is about patterns to integrate enterprise systems. Messaging is one and the concepts in messaging are used in EDA
  • 41. EIP - Messaging Patterns