Slides from my talk at JUG Erfurt on 22nd or march 2018.
Sample code available: https://github.com/flowing/flowing-retail/tree/zeebe
Recording in German available: https://youtu.be/lZIe02um5eI
7. <= milliseconds seconds minutes, weeks, …
Business
IT
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
8. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
9. The „hello world“ example
Human task
management
Service
orchestration
Events , e.g.
timers
12. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
13. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
14. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
Communication in
distributed systems
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
25. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
Communication in
distributed systems
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
26. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
Distributed
Transactions
Communication in
distributed systems
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
30. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
Distributed
Transactions
Communication in
distributed systems
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
33. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
Distributed
Transactions
Communication in
distributed systems
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
34. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
Distributed
Transactions
Orchestration
Communication in
distributed systems
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
40. 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
41. 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
42. 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
47. Order
Extract the end-to-end responsibility
Checkout
Payment
Inventory
Shipment
*Commands have an intent about
what needs to happen in the future
Order
placed
Payment
received
Retrieve
payment
50. <= milliseconds seconds minutes, weeks, …
Business
IT
Business processes
automation
Distributed
Transactions
Orchestration
Communication in
distributed systems
long runningalways short running short running, but
potentially long running
Use cases for workflow automation
55. In general, we may conclude that
Camunda performed better and
more stable for all metrics when
compared with WfMS A and WfMS B.
Micro-Benchmarking BPMN 2.0 Workflow Management Systems with Workflow Patterns,
June 2016, University of Stuttgart, Germany and University of Lugano, Switzerland
„
67. Workflow automation at scale!
low latency,
high-throughput
low frequency,
latency doesn‘t matter
What people think workflow
automation can do
What we currently teach
workflow automation
to be able to do
What workflow automation
can already do today
68. New requirements -> new solutions
Remove
RDMS
Distributed
system
Design for
performance
Resilience
Flexible
persistence
Load
78. Biz Dev
Leverage
state machine &
workflow engine
Living
documentation
Visibility in
testing
Operate with visibility
and context
Understand and discuss
business processes
Evaluate optimizations
in-sync with
implementation
improve
communication
improve
communication
Ops
89. Zeebe Client
BPMN Workflow Definition
Zeebe Broker
Zeebe Client
Application
BPMN Workflow Definition
Zeebe Broker
Application
Inventory
Service
Payment
Service
Shipment
Service
Checkout
Service
Shipment
Service
Inventory
Service
Payment
Service
Checkout
Service
90. Zeebe Client
BPMN Workflow Definition
Zeebe Broker
Zeebe Client
BPMN Workflow Definition
Zeebe Broker
Order Service Order Service
Application Application
Inventory
Service
Payment
Service
Shipment
Service
Checkout
Service
Shipment
Service
Inventory
Service
Payment
Service
Checkout
Service
91. Zeebe Client
BPMN Workflow Definition
Zeebe Broker
Kafka Client (or AMQP, REST, …) Zeebe Client
BPMN Workflow Definition
Zeebe Broker
Order Service Order Service
Application Application
Inventory
Service
Payment
Service
Shipment
Service
Checkout
Service
Shipment
Service
Inventory
Service
Payment
Service
Checkout
Service
Kafka
(or RabbitMQ, …)
92. Zeebe Client
BPMN Workflow Definition
WorkItemHandler
Retrieve payment
WorkItemHandler
Fetch goods
WorkItemHandler
Ship goods
Zeebe Broker
Kafka Client (or AMQP, REST, …) Zeebe Client
BPMN Workflow Definition
Zeebe Broker
Order Service Order Service
Application
Kafka ClientKafka ClientKafka ClientKafka Client
Inventory
Service
Payment
Service
Shipment
Service
Checkout
Service
Zeebe Client
WorkItemHandler
Shipment
Service
Zeebe Client
WorkItemHandler
Zeebe Client
WorkItemHandler
Zeebe Client
WorkItemHandler
Inventory
Service
Payment
Service
Checkout
Service
Application
Kafka
(or RabbitMQ, …)
94. Status and roadmap
• Tech preview (0.7.0)
• Working towards production-ready state
• Focus on core, not yet on completeness of features
• We love to get your feedback and discuss!