SlideShare una empresa de Scribd logo
1 de 29
Descargar para leer sin conexión
Event Driven Architecture
A	primer…	
	
@ShawnWallace
The Great Debate…
Monolith	First?	
http://martinfowler.com/bliki/MonolithFirst.html	
Micro	services	First?	
http://martinfowler.com/articles/dont-start-monolith.htm
Monolithic
Invoicing	 Inventory	
Logging	
Profiles	
Warehouse	
Orders
A problem with ‘Monolith First’
A	product	of	our	agile	approach	to	our	projects…smaller	features	
finished	earlier.		
The	goal	is	to	deploy	more	oCen…this	is	hard.	
One	soluDon	is	to	have	smaller	applicaDons.
Monolithic
Invoicing	 Inventory	
Logging	
Profiles	
Warehouse	
Orders
SOA
Orders	 Invoicing	 Inventory	
Logging	 Profiles	 Warehouse
SOA
Orders	 Invoicing	 Inventory	
Logging	 Profiles	 Warehouse	
Tightly	Coupled
SOA with Enterprise Service Bus
Orders	 Invoicing	 Inventory	
Logging	 Profiles	 Warehouse	
STILL	Tightly	Coupled	
Enterprise	Service	Bus
Event Driven Architecture
•  An	Event	is	represents	something	that	happens	in	a	domain	
•  Customer	Submits	Order	
•  Customer	Billed	
•  Payment	Received	
•  Order	Ready	for	Shipment	
•  Order	Shipped	
•  While	Events	and	their	payload	are	designed	at	the	enterprise	system	
level,	their	implementaDons	are	leC	to	the	specific	subsystems.
Event Driven Architecture
•  No	point-to-point	integraDons	
•  Loosely	coupled,	highly	scalable	systems	
•  Loosely	coupled,	TEAMS	
•  Easier	to	test	
•  Easier	to	change	
•  Topology	agnosDc
Loosely Coupled
Orders	 Invoicing	 Inventory	
Logging	 Profiles	 ReporDng	
Event	Bus
Easy to Integrate New Systems
Orders	 Invoicing	 Inventory	
Logging	 Profiles	 ReporDng	
Event	Bus	
New	System
Easy to Test
Inventory	
Inventory	
Inventory	
Scales
Orders	 Invoicing	 Inventory	
Logging	 Profiles	 ReporDng	
Event	Bus
The basic thesis of this article is that
organizations which design systems (in the broad
sense used here) are constrained to produce
designs which are copies of the communication
structures of these organizations.
--- Melvin Conway
Easily Modeled as a finite state diagram
Other benefits
•  Ease	of	3rd	party	integraDon	
•  ExisDng	systems	can	be	‘wrapped’	
•  Can	be	deliberate	about	scaling	
•  Fault	tolerant	
•  Event	messages	can	be	logged	and	‘replayed’	
•  Can	test	subsystems	in	isolaDon
A Retail System
Sales	 Logger	
Invoicing	 Shipping	 Warehouse	
Rabbit	MQ	Exchange
A Retail System – PlaLorm AgnosMc
Sales	 Logger	
Invoicing	 Shipping	 Warehouse	
Rabbit	MQ	Exchange
Order Accepted Event is generated
Sales	 Logger	
Invoicing	 Shipping	 Warehouse	
Rabbit	MQ	Exchange
Customer Billed Event
Sales	 Logger	
Invoicing	 Shipping	 Warehouse	
Rabbit	MQ	Exchange
Order Ready for Shipment Event
Sales	 Logger	
Invoicing	 Shipping	 Warehouse	
Rabbit	MQ	Exchange
Order Shipped
Sales	 Logger	
Invoicing	 Shipping	 Warehouse	
Rabbit	MQ	Exchange
Logger Consumes EVERY Event
Sales	 Logger	
Invoicing	 Shipping	 Warehouse	
Rabbit	MQ	Exchange
Logger Consumes EVERY Event
For Further Reading
•  THIS	presentaDon	(and	code)	on	GitHub		
hXps://github.com/shawnewallace/choreographed_process	
•  Stephan	Norberg	EDA	
hXp://www.infoq.com/presentaDons/Domain-Event-Driven-Architecture	
•  “Programming	Without	a	Call	Stack”		
hXp://www.enterpriseintegraDonpaXerns.com/docs/EDA.pdf	
•  “Event-Driven	Architecture	Overview”	
•  hXp://www.omg.org/soa/Uploaded%20Docs/EDA/bda2-2-06cc.pdf
Shawn Wallace
Work:
shawn.wallace@centricconsulting.com
Twitter: @ShawnWallace
Blog: blog.shawnewallace.com
http://www.about.me/shawnwallace
•  Event-driven	architecture	is	a	versaDle	approach	to	designing	
complex	soCware	systems.	These	systems	tend	to	be	easier	to	model	
for	an	organizaDon	as	EDA	embraces	Conway’s	Law	and	can	oCen	be	
modeled	as	a	finite	state	machine.	Event-driven	architecture	is	not	a	
new	concept,	but	as	more	organizaDons	embrace	micro	services,	this	
approach	to	system	design	has	become	appropriate	in	more	
situaDons.	In	this	talk	we’ll:	introduce	event-driven	architecture,	talk	
about	key	components,	look	at	a	sample	implementaDon	of	a	retail	
system.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Introduction to Event Driven Architecture
Introduction to Event Driven ArchitectureIntroduction to Event Driven Architecture
Introduction to Event Driven Architecture
 
Event driven architecture
Event driven architectureEvent driven architecture
Event driven architecture
 
Building Event Driven Systems
Building Event Driven SystemsBuilding Event Driven Systems
Building Event Driven Systems
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Event Driven Software Architecture Pattern
Event Driven Software Architecture PatternEvent Driven Software Architecture Pattern
Event Driven Software Architecture Pattern
 
Microservice vs. Monolithic Architecture
Microservice vs. Monolithic ArchitectureMicroservice vs. Monolithic Architecture
Microservice vs. Monolithic Architecture
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
 
Event Driven Microservices architecture
Event Driven Microservices architectureEvent Driven Microservices architecture
Event Driven Microservices architecture
 
Monoliths and Microservices
Monoliths and Microservices Monoliths and Microservices
Monoliths and 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
 
Monoliths, Migrations, and Microservices
Monoliths, Migrations, and MicroservicesMonoliths, Migrations, and Microservices
Monoliths, Migrations, and Microservices
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
API Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation SlidesAPI Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation Slides
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Microservices Architecture & Testing Strategies
Microservices Architecture & Testing StrategiesMicroservices Architecture & Testing Strategies
Microservices Architecture & Testing Strategies
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
 
Introduction To Microservices
Introduction To MicroservicesIntroduction To Microservices
Introduction To Microservices
 
Micro services Architecture
Micro services ArchitectureMicro services Architecture
Micro services Architecture
 

Destacado

Event driven architecture in practice
Event driven architecture in practiceEvent driven architecture in practice
Event driven architecture in practice
mimmozzo_
 

Destacado (19)

Bad metric, bad!
Bad metric, bad!Bad metric, bad!
Bad metric, bad!
 
Building Out Business Process Capabilities With Business Process Centers of E...
Building Out Business Process Capabilities With Business Process Centers of E...Building Out Business Process Capabilities With Business Process Centers of E...
Building Out Business Process Capabilities With Business Process Centers of E...
 
Rise of the Wearables
Rise of the WearablesRise of the Wearables
Rise of the Wearables
 
Reclaiming Agile Development
Reclaiming Agile Development Reclaiming Agile Development
Reclaiming Agile Development
 
The Art & Science of LifeCycle Marketing
The Art & Science of LifeCycle MarketingThe Art & Science of LifeCycle Marketing
The Art & Science of LifeCycle Marketing
 
DevOps: Sprinkle Dev, Sprinkle Ops, Let's make Cake, not Mud Pies
DevOps: Sprinkle Dev, Sprinkle Ops, Let's make Cake, not Mud PiesDevOps: Sprinkle Dev, Sprinkle Ops, Let's make Cake, not Mud Pies
DevOps: Sprinkle Dev, Sprinkle Ops, Let's make Cake, not Mud Pies
 
Metrics on the Money: The Art & Science of Change Measurement
Metrics on the Money: The Art & Science of Change MeasurementMetrics on the Money: The Art & Science of Change Measurement
Metrics on the Money: The Art & Science of Change Measurement
 
Marketing Automation Done Right 2017
Marketing Automation Done Right 2017Marketing Automation Done Right 2017
Marketing Automation Done Right 2017
 
Finally, A Voice for the Enterprise!
Finally, A Voice for the Enterprise!Finally, A Voice for the Enterprise!
Finally, A Voice for the Enterprise!
 
Thinking Fast and Slow
Thinking Fast and SlowThinking Fast and Slow
Thinking Fast and Slow
 
Business Process Excellence: Building Out Business Process Capabilities
Business Process Excellence: Building Out Business Process CapabilitiesBusiness Process Excellence: Building Out Business Process Capabilities
Business Process Excellence: Building Out Business Process Capabilities
 
How to Run a Hackathon
How to Run a HackathonHow to Run a Hackathon
How to Run a Hackathon
 
Mann india SAP Service Offerings- IS Retail
Mann india SAP Service Offerings- IS RetailMann india SAP Service Offerings- IS Retail
Mann india SAP Service Offerings- IS Retail
 
Event driven architecture in practice
Event driven architecture in practiceEvent driven architecture in practice
Event driven architecture in practice
 
Micro-Location with Beacons
Micro-Location with BeaconsMicro-Location with Beacons
Micro-Location with Beacons
 
Microservices Application Simplicity Infrastructure Complexity
Microservices Application Simplicity Infrastructure ComplexityMicroservices Application Simplicity Infrastructure Complexity
Microservices Application Simplicity Infrastructure Complexity
 
Developing event-driven microservices with event sourcing and CQRS (Shanghai)
Developing event-driven microservices with event sourcing and CQRS (Shanghai)Developing event-driven microservices with event sourcing and CQRS (Shanghai)
Developing event-driven microservices with event sourcing and CQRS (Shanghai)
 
Whitepaper : Event Driven Micro Services
Whitepaper : Event Driven Micro ServicesWhitepaper : Event Driven Micro Services
Whitepaper : Event Driven Micro Services
 
Developing event-driven microservices with event sourcing and CQRS (svcc, sv...
Developing event-driven microservices with event sourcing and CQRS  (svcc, sv...Developing event-driven microservices with event sourcing and CQRS  (svcc, sv...
Developing event-driven microservices with event sourcing and CQRS (svcc, sv...
 

Similar a Event-driven Architecture

adopt_soa.94145841
adopt_soa.94145841adopt_soa.94145841
adopt_soa.94145841
ypai
 
Jhl case study soa platform in practice short 2011 09-27 (hs)
Jhl case study soa platform in practice short 2011 09-27 (hs)Jhl case study soa platform in practice short 2011 09-27 (hs)
Jhl case study soa platform in practice short 2011 09-27 (hs)
Ambientia
 
Go beyond job schedulng webcast part 1
Go beyond job schedulng webcast part 1Go beyond job schedulng webcast part 1
Go beyond job schedulng webcast part 1
David Resnic
 
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve PooleDevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
JAXLondon_Conference
 

Similar a Event-driven Architecture (20)

StackEngine Demo - Boston
StackEngine Demo - BostonStackEngine Demo - Boston
StackEngine Demo - Boston
 
Integrating microservices in the cloud
Integrating microservices in the cloudIntegrating microservices in the cloud
Integrating microservices in the cloud
 
Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...
Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...
Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...
 
Open source containers built for real time interactions
Open source containers built for real time interactionsOpen source containers built for real time interactions
Open source containers built for real time interactions
 
adopt_soa.94145841
adopt_soa.94145841adopt_soa.94145841
adopt_soa.94145841
 
Jhl case study soa platform in practice short 2011 09-27 (hs)
Jhl case study soa platform in practice short 2011 09-27 (hs)Jhl case study soa platform in practice short 2011 09-27 (hs)
Jhl case study soa platform in practice short 2011 09-27 (hs)
 
Tech democracy ms compsci recruitment brochure aug 22nd 2011
Tech democracy ms compsci recruitment brochure  aug 22nd 2011Tech democracy ms compsci recruitment brochure  aug 22nd 2011
Tech democracy ms compsci recruitment brochure aug 22nd 2011
 
Service fabric demo
Service fabric demoService fabric demo
Service fabric demo
 
Startups without Servers
Startups without ServersStartups without Servers
Startups without Servers
 
Containers and VMs and Clouds: Oh My. by Mike Coleman
Containers and VMs and Clouds: Oh My. by Mike ColemanContainers and VMs and Clouds: Oh My. by Mike Coleman
Containers and VMs and Clouds: Oh My. by Mike Coleman
 
Cloud Services Corporate Presentation
Cloud Services Corporate PresentationCloud Services Corporate Presentation
Cloud Services Corporate Presentation
 
Go beyond job schedulng webcast part 1
Go beyond job schedulng webcast part 1Go beyond job schedulng webcast part 1
Go beyond job schedulng webcast part 1
 
Innovating with AWS: How Microservices on AWS Can Transform Your Business
Innovating with AWS: How Microservices on AWS Can Transform Your BusinessInnovating with AWS: How Microservices on AWS Can Transform Your Business
Innovating with AWS: How Microservices on AWS Can Transform Your Business
 
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
 
When Developers Operate and Operators Develop
When Developers Operate and Operators DevelopWhen Developers Operate and Operators Develop
When Developers Operate and Operators Develop
 
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve PooleDevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
 
Master the flow of microservices - because your business is more complex than...
Master the flow of microservices - because your business is more complex than...Master the flow of microservices - because your business is more complex than...
Master the flow of microservices - because your business is more complex than...
 
StackEngine Demo - Docker Austin
StackEngine Demo - Docker AustinStackEngine Demo - Docker Austin
StackEngine Demo - Docker Austin
 
From Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical DebtFrom Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical Debt
 
Dockercon Europe 2014 - Continuous Delivery leveraging on Docker CaaS
Dockercon Europe 2014 - Continuous Delivery leveraging on Docker CaaSDockercon Europe 2014 - Continuous Delivery leveraging on Docker CaaS
Dockercon Europe 2014 - Continuous Delivery leveraging on Docker CaaS
 

Último

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

Event-driven Architecture