Building Evolutionary Architectures [book] Patrick Kua.) While I’m sure we have much to learn about doing software architecture in an evolutionary style, this book marks an essential road map on the current state of understanding
Vaughn Vernon Uses Reactive DDD to Model Uncertainty in Microservices [blog] Thomas Betts, Vaughn Vernon. Don’t try to create a façade that allows you to think you aren’t in a state of uncertainty. Rather, make your best effort and model the uncertainty.
What happened to distributed programming languages? [video] Heather Miller. In this talk, Heather will take us on a whirlwind tour through history up to the present of distributed programming languages as well as programming constructs meant for distribution like futures and RPC. Together, we’ll try to work out what happened to all of the distributed programming languages!
Reactive Microservices [blog] Vaughn Vernon. In this post I teach you a first-approach method to designing microservices, giving you a workable foundation to build on. Following this, I introduce you to reactive whole systems that are composed of individual reactive microservices.
Resources for Getting Started with Distributed Systems [blog] Caitie McCaffrey. I’m often asked how to get started with Distributed Systems, so this post documents my path and some of the resources I found most helpful. It is by no means meant to be an exhaustive list.
Distributed Sagas: A Protocol for Coordinating Microservices [video] Caitie McCaffrey. In this talk I propose a new solution for this problem, Distributed Sagas, a protocol for coordinating requests among multiple micro services, while ensuring application invariants
Break that big ball of mud! [blog] Indu Alagarsamy. Use event-driven architecture style to your advantage when dealing with legacy systems to add visibility to your monolith. Use messaging patterns like publish/subscribe to build new features outside of your monolith. Make sure to evolve your monolith into newer, smaller services, using events from the monolith, to make the monolith lose its relevance.
Event Driven Applications in F# [slides] Mikhail Shilkov. Event Driven Applications in F# session on Tech Days Netherlands 2017
Tackling complex event flows [video] Bernd Rücker. In this talk Bernd demonstrates the idea of Sagas and process managers to control a flow of domain events across transactional aggregate and context boundaries. Bernd not just uses slides but explores runnable code available on GitHub. He uses lightweight open source frameworks like Camunda and shows the usage in Java or .NET based architectures.