Bernd Rücker
Passionate about developer-friendly
workflow automation technology.

Talk

Complex event flows in distributed systems

Event-driven architectures enable nicely decoupled microservices and are fundamental for decentral data management. However, using peer-to-peer event chains to implement complex end-to-end logic crossing service boundaries can accidentally increase coupling. Extracting such business logic into dedicated services reduces coupling and allows to keep sight of larger-scale flows - without violating bounded contexts, harming service autonomy or introducing god services. Service boundaries get clearer and service APIs get smarter by focusing on their potentially long running nature. I will demonstrate how the new generation of lightweight and highly-scalable state machines ease the implementation of long running services. Based on my real-life experiences, I will share how to handle complex logic and flows which require proper reactions on failures, timeouts and compensating actions and provide guidance backed by code examples to illustrate alternative approaches.

Articles

A Critical Look at Event-Driven Systems: Bernd Rücker at QCon London

There is currently a hype in the adoption of event-driven systems. Sometimes they are almost seen as the "magic thing" in our strive for decoupled systems, Bernd Rücker, noted at the QCon London 2019 conference. In his presentation he took a critical look at three common hypotheses around event-driven systems: events decrease coupling, orchestration needs to be avoided, and workflow engines are painful...

Read more...

Monitoring and Managing Workflows across Collaborating Microservices

Peer-to-peer communication between components can lead to emergent behavior, which is challenging for developers, operators and business analysts to understand. So you need to make sure to have the overview of all of the backwards-and-forwards communication that is going on in order to fulfill a business capability. In this article we additionally argue that you need to balance orchestration and choreography in a microservices architecture in order to be able to understand, manage and change the system...

Read more...

Events, Flows and Long-Running Services: A Modern Approach to Workflow Automation

If you have been following the recent discussions around the microservice architectural style, you may have heard this advice: "To effectively decouple your (micro)services you have to create an event-driven-architecture". The idea is backed by the Domain-Driven Design (DDD) community, by providing the nuts and bolts for leveraging domain events and by showing how they change the way we think about systems. Although we are generally supportive of event orientation, we asked ourselves what risks arise if we use them without further reflection. To answer this question we reviewed three common hypotheses...

Read more...

Upcoming gigs:

{{ item['fields']['Name'] }} {{ item['fields']['Location'] }}
{{ item['fields']['Talk-Date'] }}

Recently delivered at:

{{ item['fields']['Name'] }} {{ item['fields']['Location'] }}
{{ item['fields']['Talk-Date'] }}