Toward a Functional Programming Analogy for Microservices
Nov 29, 2017Bobby Calderwood

Summary
Introduces a functional programming analogy for microservices, contrasting it with the synchronous, object-oriented analogy. Advocates for an event-driven architecture based on immutable logs (Kafka) and reactive dataflows (Kafka Streams). Details CQRS, Event Sourcing, and the single writer principle in this context. Categorizes microservices into 'Functional Core' and 'Imperative Shell' (materialized views and side-effect executors). Provides a banking use-case example using Kafka Streams.
More from the Event-Driven Architectures trail
- InfiniteWatch + Confluent: Turning Customer Interaction Data into Real-Time Intelligence
- Streaming Data Integration with Apache Kafka® vs ETL
- Why Microservices Need Event-Driven Architectures for Agility and Scale
- How to Build Real-Time, Event-Driven Automation for Business Insights
- How to Build Real-Time Alerts to Stay Ahead of Critical Events