SlideShare une entreprise Scribd logo
1  sur  63
Télécharger pour lire hors ligne
@berndruecker
How State Helps you to
Stay Reactive
Orchestration, Conversations and
the Saga Pattern
Setting the scene. Example
Checkout
Payment
Inventory
Shipment
@berndruecker
Order
Placed
Payment
Received
Goods
Shipped
Notification
Event-driven & Reactive
@berndruecker
Checkout
Payment
Inventory
Shipment
But there is also trouble in reactive land!
Event chains that
implement processes
How to implement
long running behavior
Peer-to-peer event chains
Checkout
Payment
Inventory
Shipment
Order
placed
Payment
received
Goods
shipped
Goods
fetched
@berndruecker
Peer-to-peer event chains
Checkout
Payment
Inventory
Shipment
Order
placed
Payment
received
Goods
shipped
Goods
fetched
@berndruecker
The danger is that it's very easy to make
nicely decoupled systems with event
notification, without realizing that you're
losing sight of that larger-scale flow, and
thus set yourself up for trouble in future
years.
https://martinfowler.com/articles/201701-event-driven.html
@berndruecker
The danger is that it's very easy to make
nicely decoupled systems with event
notification, without realizing that you're
losing sight of that larger-scale flow, and
thus set yourself up for trouble in future
years.
https://martinfowler.com/articles/201701-event-driven.html
@berndruecker
The danger is that it's very easy to make
nicely decoupled systems with event
notification, without realizing that you're
losing sight of that larger-scale flow, and
thus set yourself up for trouble in future
years.
https://martinfowler.com/articles/201701-event-driven.html
@berndruecker
Phil Calcado at QCon NYC 2019
Notification
Checkout
Payment
Inventory
Shipment
Pinball Machine Architecture
„What the hell
just
happened?“
@berndruecker
Peer-to-peer event chains
Checkout
Payment
Inventory
Shipment
Order
placed
Payment
received
Goods
shipped
Goods
fetched
Fetch the goods
before the
payment
@berndruecker
Peer-to-peer event chains
Checkout
Payment
Inventory
Shipment
Fetch the goods
before the
payment
Goods
fetched
Order
placed
Payment
received
Goods
shipped
@berndruecker
What we wanted
Photo by Lijian Zhang, under Creative Commons SA 2.0 License and Wikimedia Commons / CC BY-SA 4.0
@berndruecker
Choreography
Order
Decide about responsibility
Checkout
Payment
Inventory
ShipmentPayment
received
Order
placed
Retrieve
payment
@berndruecker
Order
Decide about responsibility
Checkout
Payment
Inventory
ShipmentPayment
received
Order
placed
Retrieve
payment
@berndruecker
This is
choreography
This is
orchestration
Order
Decide about responsibility
Checkout
Payment
Inventory
Shipment
Order
placed
Retrieve
payment
It can still be messaging!
@berndruecker
Order
Checkout
Payment
Inventory
Shipment
Stateful orchestration
This orchestration
requires state
@berndruecker
Long running behavior
Warning:
Contains Opinion
@berndruecker
mail@berndruecker.io
@berndruecker
http://berndruecker.io/
Bernd Ruecker
Co-founder and
Chief Technologist of
Camunda
Order
Checkout
Payment
Inventory
Shipment
@berndruecker
Glue code (e.g. Java)
https://github.com/berndruecker/flowing-
retail/blob/master/kafka/java/order-
zeebe/src/main/java/io/flowing/retail/kafka/or
der/flow/FetchGoodsAdapter.java
Using a workflow engine
Workflow Engine
Scheduler
Durable State
Glue Code Whatever you
need…
Workflow Definition
Workflow Engine:
Is stateful
Can wait
Can retry
Can escalate
Can compensate
Provides visibility
Now it is easy to change the process flow
@berndruecker
Long Running Capabilities
Solve Problems
Long
Running
Technical
Process
Automation
Long Running Capabilities
Solve Problems
Long
Running
Technical
Business
Process
Automation
Example
Order Payment
Credit
Card
Retrieve
Payment
@berndruecker
Example
Order Payment
Credit
Card
Retrieve
Payment
Rejected
@berndruecker
Example
Order Payment
If the credit
card was
rejected, the
customer can
provide new
details
Credit
Card
Retrieve
Payment
Rejected
Rejected
@berndruecker
Payment
failed
Who is responsible?
Order Payment
If the credit
card was
rejected, the
customer can
provide new
details
Credit
Card
Retrieve
Payment
Rejected
Payment
received
@berndruecker
Payment
failed
Long running services
Order Payment
Credit
Card
Retrieve
Payment
Rejected
Payment
received
@berndruecker
Long running services
Order Payment
Credit
Card
@berndruecker
Extending Payment Options
@berndruecker
Extending Payment Options
begin commit
{local TX}
Customer Credit Service
begin commit
{local TX}
Credit Card Service
@berndruecker
Distributed transactions using compensation *
Compensation
@berndruecker
Long Running Capabilities
Solve Problems
Long
Running
Technical
Business
Transactions,
Saga
Process
Automation
Compensation – the classical example
Saga
book
hotel
book
car
book
flight
cancel
hotel
cancel
car
1. 2. 3.
5.6.
In case of failure
trigger compensations
book
trip
2 alterntive approaches: choreography & orchestration
@berndruecker
Event-driven choreography
Hotel
Flight
Car
Trip
Trip
booked
Flight
booked
Trip
requested
Hotel
booked
Car
booked
Request
trip
@berndruecker
Event-driven choreography
Hotel
Flight
Car
Trip
Trip
failed
Trip
requested
Hotel
booked
Car
booked
Request
trip
Flight
failed
Car
canceled
Hotel
canceled
Perform undo
(cancel car booking)
Perform undo
(cancel hotel)
@berndruecker
If your transaction involves 2 to 4 steps,
choreography might be a very good fit.
However, this approach can rapidly become confusing
if you keep adding extra steps in your transaction
as it is difficult to track which services listen to
which events. Moreover, it also might add a cyclic
dependency between services as they have to
subscribe to one another’s events.
Denis Rosa
Couchbase
https://blog.couchbase.com/saga-pattern-implement-business-transactions-using-microservices-part/
@berndruecker
Implementing changes in the process
Hotel
Flight
Car
Trip
Trip
failed
Trip
requested
Hotel
booked
Car
booked
Request
trip
Flight
failed
Car
canceled
Hotel
canceled
We have a new basic agreement
with the car rental agency and
can cancel for free within 1 hour
– do that first!
@berndruecker
Implementing changes in the process
Hotel
Flight
Car
Trip
Trip
failed
Trip
requested
Hotel
booked
Car
booked
Request
trip
Flight
failed
Car
canceled
Hotel
canceled
You have to adjust all services and redeploy at the same time!
We have a new basic agreement
with the car rental agency and
can cancel for free within 1 hour
– do that first!
@berndruecker
Orchestration
Hotel
Flight
Car
Trip
Trip
booked
Request
trip
Book
hotel
Hotel
booked
Car
booked
Flight
booked
Book
car
Book
flight
@berndruecker
Orchestration
Hotel
Flight
Car
Trip
Trip
booked
Request
trip
Book
hotel
Hotel
booked
Car
booked
Flight
booked
Book
car
Book
flight
We have a new basic agreement
with the car rental agency and
can cancel for free within 1 hour
– do that first!
You have to adjust one service and redeploy only this one!
@berndruecker
Describe orchestration with BPMN
Trip
Trip
booked
Request
trip
@berndruecker
Code examples
https://github.com/berndruecker/trip-booking-saga-java
https://github.com/berndruecker/trip-booking-saga-serverless
https://github.com/berndruecker/flowing-trip-booking-saga-c-sharp
@berndruecker
The workflow is domain logic as part of the service
Trip
@berndruecker
The workflow is domain logic as part of the service
Trip
Payment
Payment could be one
step in the Trip Saga
@berndruecker
Graphical models?
@berndruecker
Clemens Vasters
Architect at Microsoft
http://vasters.com/archive/Sagas.html
Clemens Vasters
Architect at Microsoft
http://vasters.com/archive/Sagas.html
BPMN
Business Process
Model and Notation
ISO Standard
@berndruecker
Living documentation for long-running behaviour
@berndruecker
Visual HTML reports for test cases
@berndruecker
BizDevOps
@berndruecker
Consistency decisions
need to be elevated
to the business level!
Long Running Capabilities
Solve Problems
Long
Running
Technical
Business
Transactions,
Saga
Visibility
Process
Automation
Recap
• You need capabilities for long running behavior for
technical and business reasons
• Workflow engines are a great fit – make sure you use a
developer friendly one
• Balance Orchestration (coordination) and choreography
(reactive)
@berndruecker
Want to learn more?
https://learning.oreilly.com/get-learning/?code=PPAER20
Thank you!
@berndruecker
mail@berndruecker.io
@berndruecker
https://berndruecker.io
https://medium.com/berndruecker
https://github.com/berndruecker
https://www.infoq.com/articles/events-
workflow-automation
Contact:
Slides:
Blog:
Code:
https://www.infoworld.com/article/3254777/
application-development/
3-common-pitfalls-of-microservices-
integrationand-how-to-avoid-them.html
https://thenewstack.io/5-workflow-automation-
use-cases-you-might-not-have-considered/

Contenu connexe

Tendances

AWS Community Summit London 2019 - Lost in transaction
AWS Community Summit London 2019 - Lost in transactionAWS Community Summit London 2019 - Lost in transaction
AWS Community Summit London 2019 - Lost in transactionBernd Ruecker
 
Apache Kafka Meets Workflow Engines | Bernd Ruecker, Camunda
Apache Kafka Meets Workflow Engines | Bernd Ruecker, CamundaApache Kafka Meets Workflow Engines | Bernd Ruecker, Camunda
Apache Kafka Meets Workflow Engines | Bernd Ruecker, CamundaHostedbyConfluent
 
Lost in transaction - Strategies to deal with (in)consistency in distributed ...
Lost in transaction - Strategies to deal with (in)consistency in distributed ...Lost in transaction - Strategies to deal with (in)consistency in distributed ...
Lost in transaction - Strategies to deal with (in)consistency in distributed ...Bernd Ruecker
 
OOP 2021 - Leverage the full potential of your hipster architecture
OOP 2021 - Leverage the full potential of your hipster architectureOOP 2021 - Leverage the full potential of your hipster architecture
OOP 2021 - Leverage the full potential of your hipster architectureBernd Ruecker
 
DDD Europe 2019: Lost in transaction
DDD Europe 2019: Lost in transactionDDD Europe 2019: Lost in transaction
DDD Europe 2019: Lost in transactionBernd Ruecker
 
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...camunda services GmbH
 
Long running processes in DDD
Long running processes in DDDLong running processes in DDD
Long running processes in DDDBernd Ruecker
 
Kafka Summit 2018: Monitoring and Orchestration of Your Microservices Landsca...
Kafka Summit 2018: Monitoring and Orchestration of Your Microservices Landsca...Kafka Summit 2018: Monitoring and Orchestration of Your Microservices Landsca...
Kafka Summit 2018: Monitoring and Orchestration of Your Microservices Landsca...Bernd Ruecker
 
2020 10-08 measuring-qualityinproduction
2020 10-08 measuring-qualityinproduction2020 10-08 measuring-qualityinproduction
2020 10-08 measuring-qualityinproductionAbigail Bangser
 
How to build observability into a serverless application
How to build observability into a serverless applicationHow to build observability into a serverless application
How to build observability into a serverless applicationYan Cui
 
2020 06-03 cukenfest-bdd-and-sl_os
2020 06-03 cukenfest-bdd-and-sl_os2020 06-03 cukenfest-bdd-and-sl_os
2020 06-03 cukenfest-bdd-and-sl_osAbigail Bangser
 
Observability - Experiencing the “why” behind the jargon (FlowCon 2019)
Observability - Experiencing the “why” behind the jargon (FlowCon 2019)Observability - Experiencing the “why” behind the jargon (FlowCon 2019)
Observability - Experiencing the “why” behind the jargon (FlowCon 2019)Abigail Bangser
 
Testing & deploying Microservices GeeCon 2014
Testing & deploying Microservices   GeeCon 2014Testing & deploying Microservices   GeeCon 2014
Testing & deploying Microservices GeeCon 2014Sam Newman
 
Principles of Microservices - NDC 2014
Principles of Microservices  - NDC 2014Principles of Microservices  - NDC 2014
Principles of Microservices - NDC 2014Sam Newman
 
Rip It Up - The Microservice Organisation
Rip It Up  - The Microservice OrganisationRip It Up  - The Microservice Organisation
Rip It Up - The Microservice OrganisationSam Newman
 
Hiding The Lead: Coupling, cohesion and microservices
Hiding The Lead: Coupling, cohesion and microservicesHiding The Lead: Coupling, cohesion and microservices
Hiding The Lead: Coupling, cohesion and microservicesSam Newman
 
Migrating existing monolith to serverless in 8 steps
Migrating existing monolith to serverless in 8 stepsMigrating existing monolith to serverless in 8 steps
Migrating existing monolith to serverless in 8 stepsYan Cui
 
Zeebe 0.20.0 Release Webinar - July 22, 2019
Zeebe 0.20.0 Release Webinar - July 22, 2019Zeebe 0.20.0 Release Webinar - July 22, 2019
Zeebe 0.20.0 Release Webinar - July 22, 2019Zeebe
 
Deploying and Scaling Microservices
Deploying and Scaling MicroservicesDeploying and Scaling Microservices
Deploying and Scaling MicroservicesSam Newman
 

Tendances (19)

AWS Community Summit London 2019 - Lost in transaction
AWS Community Summit London 2019 - Lost in transactionAWS Community Summit London 2019 - Lost in transaction
AWS Community Summit London 2019 - Lost in transaction
 
Apache Kafka Meets Workflow Engines | Bernd Ruecker, Camunda
Apache Kafka Meets Workflow Engines | Bernd Ruecker, CamundaApache Kafka Meets Workflow Engines | Bernd Ruecker, Camunda
Apache Kafka Meets Workflow Engines | Bernd Ruecker, Camunda
 
Lost in transaction - Strategies to deal with (in)consistency in distributed ...
Lost in transaction - Strategies to deal with (in)consistency in distributed ...Lost in transaction - Strategies to deal with (in)consistency in distributed ...
Lost in transaction - Strategies to deal with (in)consistency in distributed ...
 
OOP 2021 - Leverage the full potential of your hipster architecture
OOP 2021 - Leverage the full potential of your hipster architectureOOP 2021 - Leverage the full potential of your hipster architecture
OOP 2021 - Leverage the full potential of your hipster architecture
 
DDD Europe 2019: Lost in transaction
DDD Europe 2019: Lost in transactionDDD Europe 2019: Lost in transaction
DDD Europe 2019: Lost in transaction
 
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
 
Long running processes in DDD
Long running processes in DDDLong running processes in DDD
Long running processes in DDD
 
Kafka Summit 2018: Monitoring and Orchestration of Your Microservices Landsca...
Kafka Summit 2018: Monitoring and Orchestration of Your Microservices Landsca...Kafka Summit 2018: Monitoring and Orchestration of Your Microservices Landsca...
Kafka Summit 2018: Monitoring and Orchestration of Your Microservices Landsca...
 
2020 10-08 measuring-qualityinproduction
2020 10-08 measuring-qualityinproduction2020 10-08 measuring-qualityinproduction
2020 10-08 measuring-qualityinproduction
 
How to build observability into a serverless application
How to build observability into a serverless applicationHow to build observability into a serverless application
How to build observability into a serverless application
 
2020 06-03 cukenfest-bdd-and-sl_os
2020 06-03 cukenfest-bdd-and-sl_os2020 06-03 cukenfest-bdd-and-sl_os
2020 06-03 cukenfest-bdd-and-sl_os
 
Observability - Experiencing the “why” behind the jargon (FlowCon 2019)
Observability - Experiencing the “why” behind the jargon (FlowCon 2019)Observability - Experiencing the “why” behind the jargon (FlowCon 2019)
Observability - Experiencing the “why” behind the jargon (FlowCon 2019)
 
Testing & deploying Microservices GeeCon 2014
Testing & deploying Microservices   GeeCon 2014Testing & deploying Microservices   GeeCon 2014
Testing & deploying Microservices GeeCon 2014
 
Principles of Microservices - NDC 2014
Principles of Microservices  - NDC 2014Principles of Microservices  - NDC 2014
Principles of Microservices - NDC 2014
 
Rip It Up - The Microservice Organisation
Rip It Up  - The Microservice OrganisationRip It Up  - The Microservice Organisation
Rip It Up - The Microservice Organisation
 
Hiding The Lead: Coupling, cohesion and microservices
Hiding The Lead: Coupling, cohesion and microservicesHiding The Lead: Coupling, cohesion and microservices
Hiding The Lead: Coupling, cohesion and microservices
 
Migrating existing monolith to serverless in 8 steps
Migrating existing monolith to serverless in 8 stepsMigrating existing monolith to serverless in 8 steps
Migrating existing monolith to serverless in 8 steps
 
Zeebe 0.20.0 Release Webinar - July 22, 2019
Zeebe 0.20.0 Release Webinar - July 22, 2019Zeebe 0.20.0 Release Webinar - July 22, 2019
Zeebe 0.20.0 Release Webinar - July 22, 2019
 
Deploying and Scaling Microservices
Deploying and Scaling MicroservicesDeploying and Scaling Microservices
Deploying and Scaling Microservices
 

Similaire à Reactive Summit 2020 - How state helps you to stay reactive

Bernd Rücker - Lost in transaction? Strategies to manage consistency in serve...
Bernd Rücker - Lost in transaction? Strategies to manage consistency in serve...Bernd Rücker - Lost in transaction? Strategies to manage consistency in serve...
Bernd Rücker - Lost in transaction? Strategies to manage consistency in serve...AWSCOMSUM
 
Camunda Con Live 2020 Keynote - Microservice Orchestration and Integration
Camunda Con Live 2020 Keynote - Microservice Orchestration and IntegrationCamunda Con Live 2020 Keynote - Microservice Orchestration and Integration
Camunda Con Live 2020 Keynote - Microservice Orchestration and IntegrationBernd Ruecker
 
Serverless London 2019 - Coordination of Serverless Functions
Serverless London 2019 - Coordination of Serverless FunctionsServerless London 2019 - Coordination of Serverless Functions
Serverless London 2019 - Coordination of Serverless FunctionsBernd Ruecker
 
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...Bernd Ruecker
 
Loosely or lousily coupled - Understanding communication patterns in microser...
Loosely or lousily coupled - Understanding communication patterns in microser...Loosely or lousily coupled - Understanding communication patterns in microser...
Loosely or lousily coupled - Understanding communication patterns in microser...Bernd Ruecker
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Serverless Days 2019 - Lost in transaction
Serverless Days 2019 - Lost in transactionServerless Days 2019 - Lost in transaction
Serverless Days 2019 - Lost in transactionBernd Ruecker
 
Kafka Summit 2021 - Apache Kafka meets workflow engines
Kafka Summit 2021 - Apache Kafka meets workflow enginesKafka Summit 2021 - Apache Kafka meets workflow engines
Kafka Summit 2021 - Apache Kafka meets workflow enginesBernd Ruecker
 
JavaOne 2015 Devops and the Darkside CON6447
JavaOne 2015 Devops and the Darkside CON6447JavaOne 2015 Devops and the Darkside CON6447
JavaOne 2015 Devops and the Darkside CON6447Steve Poole
 
Destination Automation: Automating Processes in Modern Hipster Architectures
Destination Automation: Automating Processes in Modern Hipster ArchitecturesDestination Automation: Automating Processes in Modern Hipster Architectures
Destination Automation: Automating Processes in Modern Hipster ArchitecturesBernd Ruecker
 
User Stories: Across the Seven Product Dimensions
User Stories: Across the Seven Product DimensionsUser Stories: Across the Seven Product Dimensions
User Stories: Across the Seven Product DimensionsTechWell
 
The Big Picture: Monitoring and Orchestration of Your Microservices Landscape...
The Big Picture: Monitoring and Orchestration of Your Microservices Landscape...The Big Picture: Monitoring and Orchestration of Your Microservices Landscape...
The Big Picture: Monitoring and Orchestration of Your Microservices Landscape...confluent
 
20140704 Fast and Furious Customer Journey Mapping Oracle Banks
20140704 Fast and Furious Customer Journey Mapping Oracle Banks20140704 Fast and Furious Customer Journey Mapping Oracle Banks
20140704 Fast and Furious Customer Journey Mapping Oracle BanksWerbeplanung.at Summit
 
JAX 2022 - Loosely or lousily coupled
JAX 2022 - Loosely or lousily coupledJAX 2022 - Loosely or lousily coupled
JAX 2022 - Loosely or lousily coupledBernd Ruecker
 
How Events Are Reshaping Modern Systems
How Events Are Reshaping Modern SystemsHow Events Are Reshaping Modern Systems
How Events Are Reshaping Modern SystemsJonas Bonér
 
The Digital Innovation Award - Virtual Assist by Codafication
The Digital Innovation Award - Virtual Assist by CodaficationThe Digital Innovation Award - Virtual Assist by Codafication
The Digital Innovation Award - Virtual Assist by CodaficationThe Digital Insurer
 
Lie Cheat & Steal to build Hyper-Fast Applications using Event-Driven Archite...
Lie Cheat & Steal to build Hyper-Fast Applications using Event-Driven Archite...Lie Cheat & Steal to build Hyper-Fast Applications using Event-Driven Archite...
Lie Cheat & Steal to build Hyper-Fast Applications using Event-Driven Archite...Naresh Chintalcheru
 
Hacking websockets
Hacking websocketsHacking websockets
Hacking websocketsTomek Cejner
 

Similaire à Reactive Summit 2020 - How state helps you to stay reactive (20)

Bernd Rücker - Lost in transaction? Strategies to manage consistency in serve...
Bernd Rücker - Lost in transaction? Strategies to manage consistency in serve...Bernd Rücker - Lost in transaction? Strategies to manage consistency in serve...
Bernd Rücker - Lost in transaction? Strategies to manage consistency in serve...
 
Camunda Con Live 2020 Keynote - Microservice Orchestration and Integration
Camunda Con Live 2020 Keynote - Microservice Orchestration and IntegrationCamunda Con Live 2020 Keynote - Microservice Orchestration and Integration
Camunda Con Live 2020 Keynote - Microservice Orchestration and Integration
 
Serverless London 2019 - Coordination of Serverless Functions
Serverless London 2019 - Coordination of Serverless FunctionsServerless London 2019 - Coordination of Serverless Functions
Serverless London 2019 - Coordination of Serverless Functions
 
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
 
Loosely or lousily coupled - Understanding communication patterns in microser...
Loosely or lousily coupled - Understanding communication patterns in microser...Loosely or lousily coupled - Understanding communication patterns in microser...
Loosely or lousily coupled - Understanding communication patterns in microser...
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Serverless Days 2019 - Lost in transaction
Serverless Days 2019 - Lost in transactionServerless Days 2019 - Lost in transaction
Serverless Days 2019 - Lost in transaction
 
Kafka Summit 2021 - Apache Kafka meets workflow engines
Kafka Summit 2021 - Apache Kafka meets workflow enginesKafka Summit 2021 - Apache Kafka meets workflow engines
Kafka Summit 2021 - Apache Kafka meets workflow engines
 
JavaOne 2015 Devops and the Darkside CON6447
JavaOne 2015 Devops and the Darkside CON6447JavaOne 2015 Devops and the Darkside CON6447
JavaOne 2015 Devops and the Darkside CON6447
 
Destination Automation: Automating Processes in Modern Hipster Architectures
Destination Automation: Automating Processes in Modern Hipster ArchitecturesDestination Automation: Automating Processes in Modern Hipster Architectures
Destination Automation: Automating Processes in Modern Hipster Architectures
 
User Stories: Across the Seven Product Dimensions
User Stories: Across the Seven Product DimensionsUser Stories: Across the Seven Product Dimensions
User Stories: Across the Seven Product Dimensions
 
The Big Picture: Monitoring and Orchestration of Your Microservices Landscape...
The Big Picture: Monitoring and Orchestration of Your Microservices Landscape...The Big Picture: Monitoring and Orchestration of Your Microservices Landscape...
The Big Picture: Monitoring and Orchestration of Your Microservices Landscape...
 
Moving To SaaS
Moving To SaaSMoving To SaaS
Moving To SaaS
 
20140704 Fast and Furious Customer Journey Mapping Oracle Banks
20140704 Fast and Furious Customer Journey Mapping Oracle Banks20140704 Fast and Furious Customer Journey Mapping Oracle Banks
20140704 Fast and Furious Customer Journey Mapping Oracle Banks
 
JAX 2022 - Loosely or lousily coupled
JAX 2022 - Loosely or lousily coupledJAX 2022 - Loosely or lousily coupled
JAX 2022 - Loosely or lousily coupled
 
How Events Are Reshaping Modern Systems
How Events Are Reshaping Modern SystemsHow Events Are Reshaping Modern Systems
How Events Are Reshaping Modern Systems
 
The Digital Innovation Award - Virtual Assist by Codafication
The Digital Innovation Award - Virtual Assist by CodaficationThe Digital Innovation Award - Virtual Assist by Codafication
The Digital Innovation Award - Virtual Assist by Codafication
 
Lie Cheat & Steal to build Hyper-Fast Applications using Event-Driven Archite...
Lie Cheat & Steal to build Hyper-Fast Applications using Event-Driven Archite...Lie Cheat & Steal to build Hyper-Fast Applications using Event-Driven Archite...
Lie Cheat & Steal to build Hyper-Fast Applications using Event-Driven Archite...
 
Hacking websockets
Hacking websocketsHacking websockets
Hacking websockets
 
Economics of Continuous Delivery
Economics of Continuous DeliveryEconomics of Continuous Delivery
Economics of Continuous Delivery
 

Plus de Bernd Ruecker

WeAreDevelopers Live 2024 - Mastering long-running processes in modern archit...
WeAreDevelopers Live 2024 - Mastering long-running processes in modern archit...WeAreDevelopers Live 2024 - Mastering long-running processes in modern archit...
WeAreDevelopers Live 2024 - Mastering long-running processes in modern archit...Bernd Ruecker
 
JCon Live 2023 - Lice coding some integration problems
JCon Live 2023 - Lice coding some integration problemsJCon Live 2023 - Lice coding some integration problems
JCon Live 2023 - Lice coding some integration problemsBernd Ruecker
 
JFall - Process Oriented Integration
JFall - Process Oriented IntegrationJFall - Process Oriented Integration
JFall - Process Oriented IntegrationBernd Ruecker
 
CamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestration
CamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestrationCamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestration
CamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestrationBernd Ruecker
 
JavaLand 2023 - Process Oriented Integration
JavaLand 2023 - Process Oriented IntegrationJavaLand 2023 - Process Oriented Integration
JavaLand 2023 - Process Oriented IntegrationBernd Ruecker
 
CraftConf: Surviving the hyperautomation low code bubbl
CraftConf: Surviving the hyperautomation low code bubblCraftConf: Surviving the hyperautomation low code bubbl
CraftConf: Surviving the hyperautomation low code bubblBernd Ruecker
 
Mastering Data for Higher Business Impact - at Commerzbank Innovation Summit
Mastering Data for Higher Business Impact - at Commerzbank Innovation SummitMastering Data for Higher Business Impact - at Commerzbank Innovation Summit
Mastering Data for Higher Business Impact - at Commerzbank Innovation SummitBernd Ruecker
 
Camunda Chapter Hamburg - Surviving the hyperautomation low code bubble
Camunda Chapter Hamburg - Surviving the hyperautomation low code bubbleCamunda Chapter Hamburg - Surviving the hyperautomation low code bubble
Camunda Chapter Hamburg - Surviving the hyperautomation low code bubbleBernd Ruecker
 
CamundaCon 2022 Keynote: The Process Orchestration Journey
CamundaCon 2022 Keynote: The Process Orchestration JourneyCamundaCon 2022 Keynote: The Process Orchestration Journey
CamundaCon 2022 Keynote: The Process Orchestration JourneyBernd Ruecker
 
JFS 2021 - The Process Automation Map
JFS 2021 - The Process Automation MapJFS 2021 - The Process Automation Map
JFS 2021 - The Process Automation MapBernd Ruecker
 
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...Bernd Ruecker
 
Process Automation Forum April 2021 - Practical Process Automation
Process Automation Forum April 2021 - Practical Process AutomationProcess Automation Forum April 2021 - Practical Process Automation
Process Automation Forum April 2021 - Practical Process AutomationBernd Ruecker
 
Micronaut Webinar 2021 - Process Automation Introduction
Micronaut Webinar 2021 - Process Automation IntroductionMicronaut Webinar 2021 - Process Automation Introduction
Micronaut Webinar 2021 - Process Automation IntroductionBernd Ruecker
 
Webinar "Communication Between Loosely Coupled Microservices"
Webinar "Communication Between Loosely Coupled Microservices"Webinar "Communication Between Loosely Coupled Microservices"
Webinar "Communication Between Loosely Coupled Microservices"Bernd Ruecker
 
CamundaCon 2020 Keynote - The Return of Process Automation
CamundaCon 2020 Keynote - The Return of Process AutomationCamundaCon 2020 Keynote - The Return of Process Automation
CamundaCon 2020 Keynote - The Return of Process AutomationBernd Ruecker
 
Camunda Meetup: Rethink Business Processes and User Experience to Leverage Th...
Camunda Meetup: Rethink Business Processes and User Experience to Leverage Th...Camunda Meetup: Rethink Business Processes and User Experience to Leverage Th...
Camunda Meetup: Rethink Business Processes and User Experience to Leverage Th...Bernd Ruecker
 
Digitalization and Workflow Automation - Camunda Process Automation Forum
Digitalization and Workflow Automation - Camunda Process Automation ForumDigitalization and Workflow Automation - Camunda Process Automation Forum
Digitalization and Workflow Automation - Camunda Process Automation ForumBernd Ruecker
 

Plus de Bernd Ruecker (17)

WeAreDevelopers Live 2024 - Mastering long-running processes in modern archit...
WeAreDevelopers Live 2024 - Mastering long-running processes in modern archit...WeAreDevelopers Live 2024 - Mastering long-running processes in modern archit...
WeAreDevelopers Live 2024 - Mastering long-running processes in modern archit...
 
JCon Live 2023 - Lice coding some integration problems
JCon Live 2023 - Lice coding some integration problemsJCon Live 2023 - Lice coding some integration problems
JCon Live 2023 - Lice coding some integration problems
 
JFall - Process Oriented Integration
JFall - Process Oriented IntegrationJFall - Process Oriented Integration
JFall - Process Oriented Integration
 
CamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestration
CamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestrationCamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestration
CamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestration
 
JavaLand 2023 - Process Oriented Integration
JavaLand 2023 - Process Oriented IntegrationJavaLand 2023 - Process Oriented Integration
JavaLand 2023 - Process Oriented Integration
 
CraftConf: Surviving the hyperautomation low code bubbl
CraftConf: Surviving the hyperautomation low code bubblCraftConf: Surviving the hyperautomation low code bubbl
CraftConf: Surviving the hyperautomation low code bubbl
 
Mastering Data for Higher Business Impact - at Commerzbank Innovation Summit
Mastering Data for Higher Business Impact - at Commerzbank Innovation SummitMastering Data for Higher Business Impact - at Commerzbank Innovation Summit
Mastering Data for Higher Business Impact - at Commerzbank Innovation Summit
 
Camunda Chapter Hamburg - Surviving the hyperautomation low code bubble
Camunda Chapter Hamburg - Surviving the hyperautomation low code bubbleCamunda Chapter Hamburg - Surviving the hyperautomation low code bubble
Camunda Chapter Hamburg - Surviving the hyperautomation low code bubble
 
CamundaCon 2022 Keynote: The Process Orchestration Journey
CamundaCon 2022 Keynote: The Process Orchestration JourneyCamundaCon 2022 Keynote: The Process Orchestration Journey
CamundaCon 2022 Keynote: The Process Orchestration Journey
 
JFS 2021 - The Process Automation Map
JFS 2021 - The Process Automation MapJFS 2021 - The Process Automation Map
JFS 2021 - The Process Automation Map
 
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
 
Process Automation Forum April 2021 - Practical Process Automation
Process Automation Forum April 2021 - Practical Process AutomationProcess Automation Forum April 2021 - Practical Process Automation
Process Automation Forum April 2021 - Practical Process Automation
 
Micronaut Webinar 2021 - Process Automation Introduction
Micronaut Webinar 2021 - Process Automation IntroductionMicronaut Webinar 2021 - Process Automation Introduction
Micronaut Webinar 2021 - Process Automation Introduction
 
Webinar "Communication Between Loosely Coupled Microservices"
Webinar "Communication Between Loosely Coupled Microservices"Webinar "Communication Between Loosely Coupled Microservices"
Webinar "Communication Between Loosely Coupled Microservices"
 
CamundaCon 2020 Keynote - The Return of Process Automation
CamundaCon 2020 Keynote - The Return of Process AutomationCamundaCon 2020 Keynote - The Return of Process Automation
CamundaCon 2020 Keynote - The Return of Process Automation
 
Camunda Meetup: Rethink Business Processes and User Experience to Leverage Th...
Camunda Meetup: Rethink Business Processes and User Experience to Leverage Th...Camunda Meetup: Rethink Business Processes and User Experience to Leverage Th...
Camunda Meetup: Rethink Business Processes and User Experience to Leverage Th...
 
Digitalization and Workflow Automation - Camunda Process Automation Forum
Digitalization and Workflow Automation - Camunda Process Automation ForumDigitalization and Workflow Automation - Camunda Process Automation Forum
Digitalization and Workflow Automation - Camunda Process Automation Forum
 

Dernier

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
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
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
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
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
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 

Dernier (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
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
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
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 

Reactive Summit 2020 - How state helps you to stay reactive