SlideShare a Scribd company logo
Complex event flows in
distributed systems
@berndruecker
3 common hypotheses I check today:
# Events decrease coupling
# Orchestration needs to be avoided
# Workflow engines are painful
@berndruecker
Warning:
Contains Opinion
Berlin, Germany
mail@berndruecker.io
@berndruecker
Bernd Ruecker
Co-founder and
Chief Technologist of
Camunda
Complex Event Flows in Distributed Systems (Bernd Ruecker, Camunda) Kafka Summit NYC 2019
Simplified example:
dash button
Photo by 0xF2, available under Creative Commons BY-ND 2.0
license. https://www.flickr.com/photos/0xf2/29873149904/
@berndruecker
Three steps…
@berndruecker
(Micro-)services
Checkout
Payment
Inventory
Shipment
@berndruecker
Autonomous (micro-)services
Checkout
Payment
Inventory
Shipment
Dedicated Application Processes
Dedicated infrastructure
Dedicated Development Teams
@berndruecker
Events decrease coupling
@berndruecker
Example
Checkout
Payment
Inventory
Shipment
The button blinks if we can
ship within 24 hours
@berndruecker
Request/response: temporal coupling
Checkout
Payment
Inventory
Shipment
Request
Response
The button blinks if we can
ship within 24 hours
@berndruecker
Temporal decoupling with events and read models
Checkout
Payment
Inventory
Shipment
Good
Stored
Read
Model
Good
Fetched
The button blinks if we can
ship within 24 hours
*Events are facts about what happened (in the past)
@berndruecker
Order
Placed
Payment
Received
Goods
Fetched
Notification
Checkout
Payment
Inventory
Shipment
Event-driven architecture
@berndruecker
Events can decrease coupling*
*e.g. decentral data-management, read models,
extract cross-cutting aspects
@berndruecker
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
Monitoring Workflows Across Microservices
https://www.infoq.com/articles/monitor-workflow-collaborating-microservices
@berndruecker
Typical approachesDistributed Tracing
Data Lake / Event Monitoring
Process Mining
Process Tracking
@berndruecker
Stefan Tilkov: Microservice Patterns & Antipatterns - MicroXchg 2018
@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
Photo by born1945, available under Creative Commons BY 2.0 license.
@berndruecker
What we wanted
Photo by Lijian Zhang, available under Creative Commons SA 2.0 License and Pedobear19 / CC BY-SA 4.0
@berndruecker
„Challenges?“
Source:
Microservices orchestration survey,
July 2018, 354 responses
https://camunda.com/microservices-orchestration-survey-results-2018/
@berndruecker
Order
Extract the end-to-end responsibility
Checkout
Payment
Inventory
Shipment
*Commands have an intent about
what needs to happen in the future
Payment
received
Order
placed
Retrieve
payment
@berndruecker
Order
It is about where to decide about the coupling!
Checkout
Payment
Inventory
Shipment
Order
placed
Retrieve
payment
Order decides
. to listen to the event
. to issue the command
@berndruecker
Order
It is about where to decide about the coupling!
Checkout
Payment
Inventory
Shipment
Order
placed
Retrieve
payment
It can still be messaging!
@berndruecker
Commands help to avoid (complex)
peer-to-peer event chains
@berndruecker
Orchestration needs to be avoided
@berndruecker
Smart ESB-like middleware
Checkout
Payment
Inventory
Shipment
Order
Order
placed
Payment
received
Good
fetched
Good
shipped
@berndruecker
Dumb pipes
Checkout
Payment
Inventory
Shipment
Order
Smart endpoints
and dumb pipes
Martin Fowler
@berndruecker
Danger of god services?
Checkout
Order
A few
smart god services
tell
anemic CRUD services
what to do
Sam Newmann
Payment
Inventory
Shipment
@berndruecker
Danger of god services?
Checkout
Payment
Inventory
Shipment
Order
A few
smart god services
tell
anemic CRUD services
what to do
Sam Newmann
@berndruecker
A god service is only created
by bad API design!
@berndruecker
Example
Order Payment
Retrieve
Payment
@berndruecker
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
Example
Order Payment
Client of dumb endpoints easily become a god services.
If the credit
card was
rejected, the
customer can
provide new
details
Credit
Card
Retrieve
Payment
Rejected
Rejected
@berndruecker
Payment
failed
Who is responsible to deal with problems?
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
Smart endpoints are
potentially long-running
@berndruecker
Persist thing
(Entity, Actor, …)
State machine or
workflow engine
Typical
concerns
DIY = effort,
accidental
complexity
Scheduling, Versioning,
operating, visibility,
scalability, …
Handling
State
@berndruecker
Workflow engines are painful
Complex, proprietary, heavyweight, central, developer adverse, …
@berndruecker
Avoid the wrong tools!
Death by properties panel
Low-code is great!
(You can get rid
of your developers!)
Complex, proprietary, heavyweight, central, developer adverse, …
@berndruecker
Workflow engines,
state machines
It is
relevant
in modern
architectures
@berndruecker
CADENCE
Silicon valley
has recognized
Workflow engines,
state machines
@berndruecker
CADENCE
Workflow engines,
state machines
@berndruecker
public static void main(String[] args) {
ProcessEngine engine = new StandaloneInMemProcessEngineConfiguration()
.buildProcessEngine();
engine.getRepositoryService().createDeployment() //
.addModelInstance("flow.bpmn", Bpmn.createExecutableProcess("flow") //
.startEvent()
.serviceTask("Step1").camundaClass(SysoutDelegate.class)
.serviceTask("Step2").camundaClass(SysoutDelegate.class)
.endEvent()
.done()
).deploy();
engine.getRuntimeService().startProcessInstanceByKey(
"flow", Variables.putValue("city", "New York"));
}
public class SysoutDelegate implements JavaDelegate {
public void execute(DelegateExecution execution) throws Exception {
System.out.println("Hello " + execution.getVariable("city"));
}
}
What do I mean by
„lightweight?“
@berndruecker
public static void main(String[] args) {
ProcessEngine engine = new StandaloneInMemProcessEngineConfiguration()
.buildProcessEngine();
engine.getRepositoryService().createDeployment() //
.addModelInstance("flow.bpmn", Bpmn.createExecutableProcess("flow") //
.startEvent()
.serviceTask("Step1").camundaClass(SysoutDelegate.class)
.serviceTask("Step2").camundaClass(SysoutDelegate.class)
.endEvent()
.done()
).deploy();
engine.getRuntimeService().startProcessInstanceByKey(
"flow", Variables.putValue("city", "New York"));
}
public class SysoutDelegate implements JavaDelegate {
public void execute(DelegateExecution execution) throws Exception {
System.out.println("Hello " + execution.getVariable("city"));
}
}
Build engine
in one line of
code
(using in-
memory H2)
@berndruecker
public static void main(String[] args) {
ProcessEngine engine = new StandaloneInMemProcessEngineConfiguration()
.buildProcessEngine();
engine.getRepositoryService().createDeployment() //
.addModelInstance("flow.bpmn", Bpmn.createExecutableProcess("flow")
.startEvent()
.serviceTask("Step1").camundaClass(SysoutDelegate.class)
.serviceTask("Step2").camundaClass(SysoutDelegate.class)
.endEvent()
.done()
).deploy();
engine.getRuntimeService().startProcessInstanceByKey(
"flow", Variables.putValue("city", "New York"));
}
public class SysoutDelegate implements JavaDelegate {
public void execute(DelegateExecution execution) throws Exception {
System.out.println("Hello " + execution.getVariable("city"));
}
}
Define flow
e.g. in Java
DSL
@berndruecker
public static void main(String[] args) {
ProcessEngine engine = new StandaloneInMemProcessEngineConfiguration()
.buildProcessEngine();
engine.getRepositoryService().createDeployment() //
.addModelInstance("flow.bpmn", Bpmn.createExecutableProcess("flow")
.startEvent()
.serviceTask("Step1").camundaClass(SysoutDelegate.class)
.serviceTask("Step2").camundaClass(SysoutDelegate.class)
.endEvent()
.done()
).deploy();
engine.getRuntimeService().startProcessInstanceByKey(
"flow", Variables.putValue("city", "New York"));
}
public class SysoutDelegate implements JavaDelegate {
public void execute(DelegateExecution execution) throws Exception {
System.out.println("Hello " + execution.getVariable("city"));
}
}
Define flow
e.g. in Java
DSL
@berndruecker
BPMN
Business Process
Model and Notation
ISO Standard
@berndruecker
public static void main(String[] args) {
ProcessEngine engine = new StandaloneInMemProcessEngineConfiguration()
.buildProcessEngine();
engine.getRepositoryService().createDeployment() //
.addModelInstance("flow.bpmn", Bpmn.createExecutableProcess("flow")
.startEvent()
.serviceTask("Step1").camundaClass(SysoutDelegate.class)
.serviceTask("Step2").camundaClass(SysoutDelegate.class)
.endEvent()
.done()
).deploy();
engine.getRuntimeService().startProcessInstanceByKey(
"flow", Variables.putValue("city", "New York"));
}
public class SysoutDelegate implements JavaDelegate {
public void execute(DelegateExecution execution) throws Exception {
System.out.println("Hello " + execution.getVariable("city"));
}
}
We can attach
code…
@berndruecker
public static void main(String[] args) {
ProcessEngine engine = new StandaloneInMemProcessEngineConfiguration()
.buildProcessEngine();
engine.getRepositoryService().createDeployment() //
.addModelInstance("flow.bpmn", Bpmn.createExecutableProcess("flow")
.startEvent()
.serviceTask("Step1").camundaClass(SysoutDelegate.class)
.serviceTask("Step2").camundaClass(SysoutDelegate.class)
.endEvent()
.done()
).deploy();
engine.getRuntimeService().startProcessInstanceByKey(
"flow", Variables.putValue("city", "New York"));
}
public class SysoutDelegate implements JavaDelegate {
public void execute(DelegateExecution execution) throws Exception {
System.out.println("Hello " + execution.getVariable("city"));
}
}
…that is
called when
workflow
instances pass
through
@berndruecker
public static void main(String[] args) {
ProcessEngine engine = new StandaloneInMemProcessEngineConfiguration()
.buildProcessEngine();
engine.getRepositoryService().createDeployment() //
.addModelInstance("flow.bpmn", Bpmn.createExecutableProcess("flow")
.startEvent()
.serviceTask("Step1").camundaClass(SysoutDelegate.class)
.serviceTask("Step2").camundaClass(SysoutDelegate.class)
.endEvent()
.done()
).deploy();
engine.getRuntimeService().startProcessInstanceByKey(
"flow", Variables.putValue("city", "New York"));
}
public class SysoutDelegate implements JavaDelegate {
public void execute(DelegateExecution execution) throws Exception {
System.out.println("Hello " + execution.getVariable("city"));
}
}
Start
instances
@berndruecker
Payment
Now you have a state machine!
@berndruecker
Workflow
Engine
Payment
Easy to handle time
@berndruecker
Distributed
systems
@berndruecker
Example with synchronous communication
REST
Order Payment
Credit
Card
@berndruecker
Example with synchronous communication
REST
Order Payment
Credit
Card
@berndruecker
Example with synchronous communication
REST
Order Payment
Credit
Card
@berndruecker
Example with synchronous communication
REST
Order Payment
Credit
Card
Stateful
Retry
@berndruecker
Works also for asynchronous communication
Order Payment
Credit
Card
Monitor
Timeouts
@berndruecker
Anything wrong with this?
Anything wrong with this?
Distributed systems introduce complexity you have to tackle!
Credit
Card
Payment
The service can be
long running.
You get a better API and fewer gods
@berndruecker
Workflows live inside service boundaries
@berndruecker
Workflow
Engine
Workflow
No BPM(N) monoliths
https://blog.bernd-ruecker.com/avoiding-the-bpm-monolith-when-using-bounded-contexts-d86be6308d8
@berndruecker
„Lost in Transaction“
https://berndruecker.io/lost-in-transaction/
Compensation *
Compensation
@berndruecker
Homework:
Try to do this purely event-driven!
Send to: mail@berndruecker.io
@berndruecker
Biz Dev
Leverage
state machine &
workflow engine
Living
documentation
Visibility in
testing
improve
communication
improve
communication
Ops
@berndruecker
Visual HTML reports for test cases
@berndruecker
Living documentation for long-running behaviour
@berndruecker
Proper
Operations
Visibility + Context
@berndruecker
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
@berndruecker
Monitoring Workflows Across Microservices
https://www.infoq.com/articles/monitor-workflow-collaborating-microservices
@berndruecker
Tracking
Checkout Inventory
Payment Shipment
Event Bus
Workflow
Engine
https://www.confluent.io/kafka-summit-sf18/the_big_picture @berndruecker
Kafka Connect
Journey towards more orchestration
@berndruecker
Vodafone, Liongate & WDW
Presented at CamundaCOn Berlin 2018
Before mapping processes
explicitly with BPMN, the truth was
buried in the code and nobody
knew what was going on.
Jimmy Floyd, 24 Hour Fitnesse
„
@berndruecker
…
It addresses one of the core issues in a distributed
microservices architecture—where is the source of
truth for the coordinated interaction of the
entire system?
…
the system we are replacing uses a complex peer-
to-peer choreography that requires reasoning
across multiple codebases to understand.
https://medium.com/@sitapati/node-js-client-for-zeebe-microservices-orchestration-engine-72287e4c7d94
Josh Wulf
Credit Sense
@berndruecker
Lightweight workflow engines are
great – don‘t DIY*
*e.g. enabling potentially long-running services, solving hard
developer problems, can run decentralized
@berndruecker
Code, code, code…
@berndruecker
Event-driven example: Choreography & Tracking
InventoryPayment ShippingCheckout Tracking
https://github.com/berndruecker/flowing-retail/
H2
@berndruecker
Event-driven example: Choreography + Orchestration
InventoryPaymentOrder ShippingCheckout Monitor
https://github.com/berndruecker/flowing-retail/
H2 H2
@berndruecker
# Events decrease coupling: sometimes
read-models, but no complex peer-to-peer event chains!
# Orchestration needs to be avoided: sometimes
no ESB, smart endpoints/dumb pipes, balance orchestration and choreography
# Workflow engines are painful: some of them
lightweight engines are easy to use and can run decentralized,
they solve hard developer problems, don‘t DIY
@berndruecker
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/

More Related Content

What's hot (16)

PDF
1_Project Management Foundation
Hisham Haridy MBA, PMP®, RMP®, SP®
 
PPT
Project Management Methodologies
Monief Eid,Prince2,Prosci, Lean Six Sigma &ITIL
 
PPT
Healthcare Identity Management and Role-Based Access in a Federated NHIN - Th...
Richard Moore
 
PDF
PMBOK® Guide Processes Flow – 6th Edition
Ricardo Viana Vargas
 
PDF
PMP - Download 49 Processes Chart | PMBOK6 | Links to all Slides | Link to Yo...
Anand Bobade
 
PPTX
Earned Value Management (EVM) Limitations
Iftikhar Anjum
 
PDF
PMBOK® Guide 5th edition Processes Flow in English - Simplified Version
Ricardo Viana Vargas
 
PPTX
Project integration management
deep sharma
 
PDF
Tutorial: Implementing Specification-By-Example with Gherkin
Christian Hassa
 
PPTX
User story slicing
Ankit Tandon
 
PPTX
Pulsar Watermarking - Pulsar Virtual Summit Europe 2021
StreamNative
 
PPTX
PMP Training - 09 project human resource management
ejlp12
 
PDF
Project Result PowerPoint Presentation Slides
SlideTeam
 
PDF
Pmbok6 to 7 transformation
Zaur Ahmadov, PMP
 
PPTX
Project Cost Management
Hayat Denzi
 
PDF
Project Management for Startups
Ebtihaj khan
 
1_Project Management Foundation
Hisham Haridy MBA, PMP®, RMP®, SP®
 
Project Management Methodologies
Monief Eid,Prince2,Prosci, Lean Six Sigma &ITIL
 
Healthcare Identity Management and Role-Based Access in a Federated NHIN - Th...
Richard Moore
 
PMBOK® Guide Processes Flow – 6th Edition
Ricardo Viana Vargas
 
PMP - Download 49 Processes Chart | PMBOK6 | Links to all Slides | Link to Yo...
Anand Bobade
 
Earned Value Management (EVM) Limitations
Iftikhar Anjum
 
PMBOK® Guide 5th edition Processes Flow in English - Simplified Version
Ricardo Viana Vargas
 
Project integration management
deep sharma
 
Tutorial: Implementing Specification-By-Example with Gherkin
Christian Hassa
 
User story slicing
Ankit Tandon
 
Pulsar Watermarking - Pulsar Virtual Summit Europe 2021
StreamNative
 
PMP Training - 09 project human resource management
ejlp12
 
Project Result PowerPoint Presentation Slides
SlideTeam
 
Pmbok6 to 7 transformation
Zaur Ahmadov, PMP
 
Project Cost Management
Hayat Denzi
 
Project Management for Startups
Ebtihaj khan
 

Similar to Complex Event Flows in Distributed Systems (Bernd Ruecker, Camunda) Kafka Summit NYC 2019 (20)

PDF
Complex event flows in distributed systems (QCon London 2019)
Bernd Ruecker
 
PDF
Monitoring and Orchestration of your Microservices Landscape with Kafka and Z...
Bernd Ruecker
 
PDF
O'Reilly SA NYC 2018: Complex event flows in distributed systems
Bernd Ruecker
 
PDF
Complex event flows in distributed systems
Bernd Ruecker
 
PDF
Communication between (micro-)services - Bernd Rücker - Codemotion Amsterdam ...
Codemotion
 
PDF
Monitoring and Orchestration of your Microservices Landscape with Kafka and Z...
Bernd Ruecker
 
PDF
Camunda Con Live 2020 Keynote - Microservice Orchestration and Integration
Bernd Ruecker
 
PDF
Kafka Summit 2020: If an event is published to a topic and no one is around t...
Bernd Ruecker
 
PDF
If an Event is Published to a Topic and No One is Around to Consume it, Does ...
confluent
 
PDF
Moving beyond request reply - designing smarter APIs
Bernd Ruecker
 
PDF
JFall - Process Oriented Integration
Bernd Ruecker
 
PDF
CraftConf: Surviving the hyperautomation low code bubbl
Bernd Ruecker
 
PDF
DDD Belgium Meetup 2017: Events, flows and long running services
Bernd Ruecker
 
PDF
Collaboration of (micro-)services
Bernd Ruecker
 
PDF
Developing event-driven microservices with event sourcing and CQRS (Shanghai)
Chris Richardson
 
PDF
November 2017: Collaboration of (micro-)services
Bernd Ruecker
 
PDF
QCon NYC 2019 - Workflow automation reinvented
Bernd Ruecker
 
PDF
CamundaCon 2020 Keynote - The Return of Process Automation
Bernd Ruecker
 
PDF
MuCon London 2017: Break your event chains
Bernd Ruecker
 
PDF
Developing event-driven microservices with event sourcing and CQRS (london Ja...
Chris Richardson
 
Complex event flows in distributed systems (QCon London 2019)
Bernd Ruecker
 
Monitoring and Orchestration of your Microservices Landscape with Kafka and Z...
Bernd Ruecker
 
O'Reilly SA NYC 2018: Complex event flows in distributed systems
Bernd Ruecker
 
Complex event flows in distributed systems
Bernd Ruecker
 
Communication between (micro-)services - Bernd Rücker - Codemotion Amsterdam ...
Codemotion
 
Monitoring and Orchestration of your Microservices Landscape with Kafka and Z...
Bernd Ruecker
 
Camunda Con Live 2020 Keynote - Microservice Orchestration and Integration
Bernd Ruecker
 
Kafka Summit 2020: If an event is published to a topic and no one is around t...
Bernd Ruecker
 
If an Event is Published to a Topic and No One is Around to Consume it, Does ...
confluent
 
Moving beyond request reply - designing smarter APIs
Bernd Ruecker
 
JFall - Process Oriented Integration
Bernd Ruecker
 
CraftConf: Surviving the hyperautomation low code bubbl
Bernd Ruecker
 
DDD Belgium Meetup 2017: Events, flows and long running services
Bernd Ruecker
 
Collaboration of (micro-)services
Bernd Ruecker
 
Developing event-driven microservices with event sourcing and CQRS (Shanghai)
Chris Richardson
 
November 2017: Collaboration of (micro-)services
Bernd Ruecker
 
QCon NYC 2019 - Workflow automation reinvented
Bernd Ruecker
 
CamundaCon 2020 Keynote - The Return of Process Automation
Bernd Ruecker
 
MuCon London 2017: Break your event chains
Bernd Ruecker
 
Developing event-driven microservices with event sourcing and CQRS (london Ja...
Chris Richardson
 
Ad

More from confluent (20)

PDF
Stream Processing Handson Workshop - Flink SQL Hands-on Workshop (Korean)
confluent
 
PPTX
Webinar Think Right - Shift Left - 19-03-2025.pptx
confluent
 
PDF
Migration, backup and restore made easy using Kannika
confluent
 
PDF
Five Things You Need to Know About Data Streaming in 2025
confluent
 
PDF
Data in Motion Tour Seoul 2024 - Keynote
confluent
 
PDF
Data in Motion Tour Seoul 2024 - Roadmap Demo
confluent
 
PDF
From Stream to Screen: Real-Time Data Streaming to Web Frontends with Conflue...
confluent
 
PDF
Confluent per il settore FSI: Accelerare l'Innovazione con il Data Streaming...
confluent
 
PDF
Data in Motion Tour 2024 Riyadh, Saudi Arabia
confluent
 
PDF
Build a Real-Time Decision Support Application for Financial Market Traders w...
confluent
 
PDF
Strumenti e Strategie di Stream Governance con Confluent Platform
confluent
 
PDF
Compose Gen-AI Apps With Real-Time Data - In Minutes, Not Weeks
confluent
 
PDF
Building Real-Time Gen AI Applications with SingleStore and Confluent
confluent
 
PDF
Unlocking value with event-driven architecture by Confluent
confluent
 
PDF
Il Data Streaming per un’AI real-time di nuova generazione
confluent
 
PDF
Unleashing the Future: Building a Scalable and Up-to-Date GenAI Chatbot with ...
confluent
 
PDF
Break data silos with real-time connectivity using Confluent Cloud Connectors
confluent
 
PDF
Building API data products on top of your real-time data infrastructure
confluent
 
PDF
Speed Wins: From Kafka to APIs in Minutes
confluent
 
PDF
Evolving Data Governance for the Real-time Streaming and AI Era
confluent
 
Stream Processing Handson Workshop - Flink SQL Hands-on Workshop (Korean)
confluent
 
Webinar Think Right - Shift Left - 19-03-2025.pptx
confluent
 
Migration, backup and restore made easy using Kannika
confluent
 
Five Things You Need to Know About Data Streaming in 2025
confluent
 
Data in Motion Tour Seoul 2024 - Keynote
confluent
 
Data in Motion Tour Seoul 2024 - Roadmap Demo
confluent
 
From Stream to Screen: Real-Time Data Streaming to Web Frontends with Conflue...
confluent
 
Confluent per il settore FSI: Accelerare l'Innovazione con il Data Streaming...
confluent
 
Data in Motion Tour 2024 Riyadh, Saudi Arabia
confluent
 
Build a Real-Time Decision Support Application for Financial Market Traders w...
confluent
 
Strumenti e Strategie di Stream Governance con Confluent Platform
confluent
 
Compose Gen-AI Apps With Real-Time Data - In Minutes, Not Weeks
confluent
 
Building Real-Time Gen AI Applications with SingleStore and Confluent
confluent
 
Unlocking value with event-driven architecture by Confluent
confluent
 
Il Data Streaming per un’AI real-time di nuova generazione
confluent
 
Unleashing the Future: Building a Scalable and Up-to-Date GenAI Chatbot with ...
confluent
 
Break data silos with real-time connectivity using Confluent Cloud Connectors
confluent
 
Building API data products on top of your real-time data infrastructure
confluent
 
Speed Wins: From Kafka to APIs in Minutes
confluent
 
Evolving Data Governance for the Real-time Streaming and AI Era
confluent
 
Ad

Recently uploaded (20)

PPTX
Building a Production-Ready Barts Health Secure Data Environment Tooling, Acc...
Barts Health
 
PDF
Are there government-backed agri-software initiatives in Limerick.pdf
giselawagner2
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
PDF
Apache CloudStack 201: Let's Design & Build an IaaS Cloud
ShapeBlue
 
PDF
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PPTX
Building and Operating a Private Cloud with CloudStack and LINBIT CloudStack ...
ShapeBlue
 
PDF
Novus Safe Lite- What is Novus Safe Lite.pdf
Novus Hi-Tech
 
PDF
HR agent at Mediq: Lessons learned on Agent Builder & Maestro by Tacstone Tec...
UiPathCommunity
 
PDF
Shuen Mei Parth Sharma Boost Productivity, Innovation and Efficiency wit...
AWS Chicago
 
PDF
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
PDF
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
PDF
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
PPTX
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
PDF
CloudStack GPU Integration - Rohit Yadav
ShapeBlue
 
Building a Production-Ready Barts Health Secure Data Environment Tooling, Acc...
Barts Health
 
Are there government-backed agri-software initiatives in Limerick.pdf
giselawagner2
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
Apache CloudStack 201: Let's Design & Build an IaaS Cloud
ShapeBlue
 
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Building and Operating a Private Cloud with CloudStack and LINBIT CloudStack ...
ShapeBlue
 
Novus Safe Lite- What is Novus Safe Lite.pdf
Novus Hi-Tech
 
HR agent at Mediq: Lessons learned on Agent Builder & Maestro by Tacstone Tec...
UiPathCommunity
 
Shuen Mei Parth Sharma Boost Productivity, Innovation and Efficiency wit...
AWS Chicago
 
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
CloudStack GPU Integration - Rohit Yadav
ShapeBlue
 

Complex Event Flows in Distributed Systems (Bernd Ruecker, Camunda) Kafka Summit NYC 2019