SlideShare a Scribd company logo
On Event-Driven
 Architecture
 Frank Mueller / Oldenburg / Germany
Introduction

• 43 years, married, two daughters
• IT since more than 20 years
• Main job as team manager at BTC
• Since 1999 side job as IT journalist and
  consultant
• Interestedarchitectures
  software
             in agile processes and large
What is Tideland?




Tideland is the name of the ecosystem at the coast 50 km north of
Oldenburg. Here the tide is high and the coast line is shallow. So about each
12 hours large parts of the coast get flooded. As a result this area is
changing constantly, matching to my motto - embrace change.
How did everything
start?
In the beginning there have been
  single systems for single tasks
Today we‘ve got large data centers ...
... and networked computers
In future we‘ll have systems with a very high
     number of cores and processors ...
... working in and for ubiquitous computing
                  devices ...
... connected world-wide and around the clock in
             ultra-large-scale systems
New environments
        implicate
   new challenges
Challenge




How to parallelize work?
How to parallelize
        work?
• No problem in containers
• Computing power forand algorithms
  special environments
                         single jobs needs

• Languages like Erlang are designed for
  concurrency
• Algorithms likeand Conquer Pipes and
  Filters, Divide
                  Map/Reduce,
Challenge




How to handle latency in distributed
         environments?
How to handle
        latency?
• Loose coupling via message-passing
• On language and architecture level
• Publish/subscribe for events
• Replies are also events
• Receiver has to deal with timeouts
Challenge




 How to rely on systems you don‘t own?
How to rely on foreign
      systems?
• Interfaces are contracts between clients
  and servers
• Both have to be designed fault tolerant
• Strong governance is needed
• Open protocols and standards become
  more and more important
Challenge
   How to handle service outages?
How to handle service
      outages?

• Message-driven architectures decouple
  service providers and clients
• Messaging infrastructures take care of
  the delivery after the outage
• Clients have to deal with long runtimes
Challenge




  How to handle changing services?
How to handle
   changing services?
• Service providers have to maintain
  changing interfaces in parallel
• Coordination as part of the governance
  gets more and more complex
• Downside of the flexibility
• Open standards for common interfaces
Challenge




How to use resources only temporarily?
How to use resources
 only temporarily?
• Resources aren‘t needed linearly
• Systems can start and stop services
  depending on business cases and load
• Clouds and SaaS allow the flexible
  usage of resources on demand
• Google, Amazon, Salesforce
Challenge




   And Ultra-Large Scale Systems?
“
Ultra-Large-Scale Systems will be
designed beyond human
comprehension by design methods




                        ”
that we don‘t completely
understand.
                 – Richard P. Gabriel
An approach:
See the world
driven by events
Broker



                                Event      Sub
                    Topic
                                  A         1


Pub      Event
 1         A


                                Event      Sub
                                  A         2




      Simple Publish/Subscribe Messaging
Broker
Pub       Event                 Event       Sub
 1          A                     A          1

                     Topic

Pub       Event                Event        Sub
 2          B                  A/B/C         2




Pub       Event                 Event       Sub
 3          C                   A&B          3




      Complex Publish/Subscribe Messaging
Broker
                           Event   Sub
                             A      1

                 Topic

                           Event
Pub   Event                  B
 1      A


                           Event
                                   CEP
                             A




                                   Rules




       Complex Event Processing
Event                      Event




                      Su




                                                 Su
                A                          B




                      bs




                                                 bs
          h




                                     h
        is




                                    is
                       cr




                                                  cr
     bl




                                 bl
                         ib




                                                    ib
   Pu




                               Pu
                           e




                                                      e
Service                    Service                    Service
   1                          2                          3




               Business Process Chain
Event-Driven Business
 Process Management
• Combination of BPM and CEP
• Standardization through Event
  Processing Technical Society (EPTS)
• Modelling based on BPMN
• Currently only proprietary Event
  Processing Languages (EPL)
Finally ...
Future scenario

• Less shrink-wrapped applications
• More internal and external services
• Enterprise landscapes change to end-
  user individual service mashups
• Increasing business intelligence through
  monitoring and aggregation
On Event-Driven Architecture

More Related Content

KEY
Agility And The Way To SOA
PDF
Spaß an der Nebenläufigkeit
PPTX
Java Best Practices - Tools, Performance, and Deployment
PPTX
The CIBER / CA partnership & Why CIBER is moving to Nimsoft Monitor
PDF
Event-Driven Applications Done Right - Pulsar Summit SF 2022
PPS
Ogdc 2007 David Lakritz
PDF
Soa symposium agile bpm - impossible
PPT
Integration daysBizTalk Used for Real Time Payments
Agility And The Way To SOA
Spaß an der Nebenläufigkeit
Java Best Practices - Tools, Performance, and Deployment
The CIBER / CA partnership & Why CIBER is moving to Nimsoft Monitor
Event-Driven Applications Done Right - Pulsar Summit SF 2022
Ogdc 2007 David Lakritz
Soa symposium agile bpm - impossible
Integration daysBizTalk Used for Real Time Payments

Similar to On Event-Driven Architecture (20)

PDF
Personal robot industry v4
PDF
Microservices Antipatterns
PDF
CloudFest Denver Windows Azure Design Patterns
PPTX
Intro to Kanban - AgileDayChile2011 Keynote
PDF
Evolution of Longer-Term Planning in a Large Scale Agile Project – F-Secure’s...
PDF
What's hot in a flat world
PDF
Domain Driven Design Big Picture Strategic Patterns
PDF
Dubbo and Weidian's practice on micro-service architecture
PDF
Canadian BPC User Conference May 19 2011
PDF
[WSO2Con EU 2017] Building Next Generation Banking Middleware at ING: The Rol...
PDF
Asynchronous processing with PHP and Symfony2. Do it simple
PPT
Bluetube
PPTX
Micro Services Architecture
PDF
Confluent Messaging Modernization Forum
PPTX
Etug tell big_bluebutton_bcc_
PDF
QCon 2015 - Microservices Track Notes
ODP
Scaling Streaming - Concepts, Research, Goals
PPSX
IM04 - BI Project Management
PPTX
Qos In broadband explains how buffer bload and
PDF
Service as-a-software
Personal robot industry v4
Microservices Antipatterns
CloudFest Denver Windows Azure Design Patterns
Intro to Kanban - AgileDayChile2011 Keynote
Evolution of Longer-Term Planning in a Large Scale Agile Project – F-Secure’s...
What's hot in a flat world
Domain Driven Design Big Picture Strategic Patterns
Dubbo and Weidian's practice on micro-service architecture
Canadian BPC User Conference May 19 2011
[WSO2Con EU 2017] Building Next Generation Banking Middleware at ING: The Rol...
Asynchronous processing with PHP and Symfony2. Do it simple
Bluetube
Micro Services Architecture
Confluent Messaging Modernization Forum
Etug tell big_bluebutton_bcc_
QCon 2015 - Microservices Track Notes
Scaling Streaming - Concepts, Research, Goals
IM04 - BI Project Management
Qos In broadband explains how buffer bload and
Service as-a-software
Ad

More from Frank Müller (20)

PDF
IT-Tage 2024: Philosophie in der Software-Architektur
PDF
JAX 2023 - Cloud Provider APIs
PDF
JAX 2023 - Generics in Go
PDF
Let The Computer Do It
PDF
Concurrency with Go
PDF
2021 OOP - Kubernetes Operatoren
PDF
DevOpsCon - Verteilte Entwicklung in Go
PDF
Devs@Home - Einführung in Go
PDF
Fun with functions
PDF
Ein Gopher im Netz
PDF
Blockchains - Mehr als nur digitale Währungen
PDF
Go - Googles Sprache für skalierbare Systeme
PDF
Cloud Provisioning mit Juju
PDF
Juju - Scalable Software with Google Go
PDF
RESTful Web Applications with Google Go
PDF
Clouds, leicht beherrschbar
PDF
Skalierbare Anwendungen mit Google Go
PDF
WTC 2013 - Juju - Mit etwas Magie zur perfekten Cloud
PDF
Juju - Google Go in a scalable Environment
PDF
OOP 2013 - Weltweite Entwicklung von Open Source Software
IT-Tage 2024: Philosophie in der Software-Architektur
JAX 2023 - Cloud Provider APIs
JAX 2023 - Generics in Go
Let The Computer Do It
Concurrency with Go
2021 OOP - Kubernetes Operatoren
DevOpsCon - Verteilte Entwicklung in Go
Devs@Home - Einführung in Go
Fun with functions
Ein Gopher im Netz
Blockchains - Mehr als nur digitale Währungen
Go - Googles Sprache für skalierbare Systeme
Cloud Provisioning mit Juju
Juju - Scalable Software with Google Go
RESTful Web Applications with Google Go
Clouds, leicht beherrschbar
Skalierbare Anwendungen mit Google Go
WTC 2013 - Juju - Mit etwas Magie zur perfekten Cloud
Juju - Google Go in a scalable Environment
OOP 2013 - Weltweite Entwicklung von Open Source Software
Ad

Recently uploaded (20)

PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
cuic standard and advanced reporting.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
Spectroscopy.pptx food analysis technology
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPT
Teaching material agriculture food technology
PPTX
Big Data Technologies - Introduction.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Encapsulation theory and applications.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
NewMind AI Weekly Chronicles - August'25 Week I
Review of recent advances in non-invasive hemoglobin estimation
cuic standard and advanced reporting.pdf
Programs and apps: productivity, graphics, security and other tools
Spectroscopy.pptx food analysis technology
Mobile App Security Testing_ A Comprehensive Guide.pdf
Encapsulation_ Review paper, used for researhc scholars
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Teaching material agriculture food technology
Big Data Technologies - Introduction.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Per capita expenditure prediction using model stacking based on satellite ima...
Spectral efficient network and resource selection model in 5G networks
Encapsulation theory and applications.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
The AUB Centre for AI in Media Proposal.docx
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...

On Event-Driven Architecture

  • 1. On Event-Driven Architecture Frank Mueller / Oldenburg / Germany
  • 2. Introduction • 43 years, married, two daughters • IT since more than 20 years • Main job as team manager at BTC • Since 1999 side job as IT journalist and consultant • Interestedarchitectures software in agile processes and large
  • 3. What is Tideland? Tideland is the name of the ecosystem at the coast 50 km north of Oldenburg. Here the tide is high and the coast line is shallow. So about each 12 hours large parts of the coast get flooded. As a result this area is changing constantly, matching to my motto - embrace change.
  • 5. In the beginning there have been single systems for single tasks
  • 6. Today we‘ve got large data centers ...
  • 7. ... and networked computers
  • 8. In future we‘ll have systems with a very high number of cores and processors ...
  • 9. ... working in and for ubiquitous computing devices ...
  • 10. ... connected world-wide and around the clock in ultra-large-scale systems
  • 11. New environments implicate new challenges
  • 13. How to parallelize work? • No problem in containers • Computing power forand algorithms special environments single jobs needs • Languages like Erlang are designed for concurrency • Algorithms likeand Conquer Pipes and Filters, Divide Map/Reduce,
  • 14. Challenge How to handle latency in distributed environments?
  • 15. How to handle latency? • Loose coupling via message-passing • On language and architecture level • Publish/subscribe for events • Replies are also events • Receiver has to deal with timeouts
  • 16. Challenge How to rely on systems you don‘t own?
  • 17. How to rely on foreign systems? • Interfaces are contracts between clients and servers • Both have to be designed fault tolerant • Strong governance is needed • Open protocols and standards become more and more important
  • 18. Challenge How to handle service outages?
  • 19. How to handle service outages? • Message-driven architectures decouple service providers and clients • Messaging infrastructures take care of the delivery after the outage • Clients have to deal with long runtimes
  • 20. Challenge How to handle changing services?
  • 21. How to handle changing services? • Service providers have to maintain changing interfaces in parallel • Coordination as part of the governance gets more and more complex • Downside of the flexibility • Open standards for common interfaces
  • 22. Challenge How to use resources only temporarily?
  • 23. How to use resources only temporarily? • Resources aren‘t needed linearly • Systems can start and stop services depending on business cases and load • Clouds and SaaS allow the flexible usage of resources on demand • Google, Amazon, Salesforce
  • 24. Challenge And Ultra-Large Scale Systems?
  • 25. “ Ultra-Large-Scale Systems will be designed beyond human comprehension by design methods ” that we don‘t completely understand. – Richard P. Gabriel
  • 26. An approach: See the world driven by events
  • 27. Broker Event Sub Topic A 1 Pub Event 1 A Event Sub A 2 Simple Publish/Subscribe Messaging
  • 28. Broker Pub Event Event Sub 1 A A 1 Topic Pub Event Event Sub 2 B A/B/C 2 Pub Event Event Sub 3 C A&B 3 Complex Publish/Subscribe Messaging
  • 29. Broker Event Sub A 1 Topic Event Pub Event B 1 A Event CEP A Rules Complex Event Processing
  • 30. Event Event Su Su A B bs bs h h is is cr cr bl bl ib ib Pu Pu e e Service Service Service 1 2 3 Business Process Chain
  • 31. Event-Driven Business Process Management • Combination of BPM and CEP • Standardization through Event Processing Technical Society (EPTS) • Modelling based on BPMN • Currently only proprietary Event Processing Languages (EPL)
  • 33. Future scenario • Less shrink-wrapped applications • More internal and external services • Enterprise landscapes change to end- user individual service mashups • Increasing business intelligence through monitoring and aggregation

Editor's Notes

  • #4: Tideland is the name of the ecosystem at the coast 50 km north of Oldenburg. Here the tide is high and the coast line is shallow. So about each 12 hours large parts of the coast get flooded. As a result this area is changing constantly, matching to my motto - embrace change.
  • #6: ENIAC, short for Electronic Numerical Integrator And Computer, was the first general-purpose electronic computer. It was the first Turing-complete, digital computer capable of being reprogrammed to solve a full range of computing problems.
  • #9: Tilera TILE64 with 64 cores and Sun Fire E25K with 72 processors and 144 hardware threads. The actual Sun UltraSPARC T2 processor provides 8 cores and 64 threads on one chip.
  • #10: Mobile phones, car navigation, home entertainment, game consoles, new systems based on user interfaces like MS surface.
  • #14: No problem for imperative programming inside a container for parallel sessions (application servers). But when single tasks need the power of multiple cores or processors special environments and algorithms are needed. Languages like Erlang, Clojure and Scala are designed for concurrency, Erlang also reliability and distribution. Problems still have to be parallelized. Algorithms and strategies are map/reduce, pipes and filters, and divide and conquer.
  • #16: Languages like Erlang use message queues internally. External message queue systems like IBM MQSeries or MSMQ operate language independent.
  • #19: Everyone knows the BSOD.
  • #20: Direct calls of web services will fail if the service is down. A message-oriented middleware, for example an enterprise service bus (ESB), works like a parcel service wich tries several times to deliver before giving up.
  • #22: Services will change over time. But not every client can change his application. So several different interfaces fot the same service have to be operated at the same time.
  • #24: System resources are too expensive for idling. Temporary business cases like marketing campaigns or high load situations like extraordinary news traffic can use clouds and special software services on demand.
  • #26: Richard P. Gabriel, born 1949, LISP expert, worked for Park Place Systems, Sun Microsystems, and since 2007 IBM. Major contributor to the Ultra-Large-Scale Systems study led by the CMU Software Engineering Institute.
  • #27: Extreme loose coupling through asynchronous messaging using a broker and following the publish/subscribe paradigm.
  • #32: EDBPM. EPTS started 2008. Processing languages based on SQL or rule languages.