Skip to main content
Back to Tags

Event Driven

125 items tagged with "event-driven"

Filter by type:

Patterns37

Pattern

Observer

Establishes a one-to-many dependency so that when one object changes state, all its dependents are notified and updated automatically.

Pattern

Publish-Subscribe

Decouples senders from receivers by routing messages through a broker or channel so publishers and subscribers never reference each other.

Pattern

Domain Event

Captures something significant that happened in the domain as an explicit object, decoupling the trigger from the reactions to it.

Pattern

CQRS (Command Query Responsibility Segregation)

Separates the model that writes data (commands) from the model that reads it (queries) so each can be optimized independently.

Pattern

Transactional Outbox

Reliably publishes messages by writing them to an outbox table in the same local transaction as the business data change.

Pattern

Change Data Capture (CDC)

Captures row-level changes from a database's transaction log and streams them as events to downstream consumers.

Pattern

Choreography

Coordinates a distributed workflow through services reacting to each other's events, with no central controller.

Pattern

Competing Consumers

Enable multiple concurrent consumers to process messages from the same queue to increase throughput and improve resilience.

Pattern

Queue-Based Load Leveling

Use a queue between tasks and a service to smooth intermittent heavy loads and protect the service from being overwhelmed.

Pattern

Claim Check

Store a large message payload externally and pass only a reference through the messaging system to avoid moving bulky data.

Pattern

Compensating Transaction

Undo the completed steps of a multi-step operation when one step fails, restoring consistency without distributed ACID transactions.

Pattern

Sequential Convoy

Process related messages in order while still processing unrelated messages in parallel, by grouping them into ordered sets.

Pattern

Message Channel

Connects two applications with a logical pipe so a sender can transmit data to a receiver without knowing the receiver's location or identity.

Pattern

Point-to-Point Channel

Ensures exactly one receiver consumes each message on a channel, even when multiple consumers compete, so a message is processed once.

Pattern

Publish-Subscribe Channel

Broadcasts each message to all interested subscribers so one event can notify many independent consumers without the publisher knowing them.

Pattern

Message Router

Consumes a message and redirects it to a different channel based on conditions, decoupling producers from the decision of where messages should go.

Pattern

Content-Based Router

Routes each message to a destination channel chosen by inspecting the message's content, so the payload itself determines where it is delivered.

Pattern

Message Filter

Lets only messages meeting specified criteria pass through a channel and silently discards the rest, so consumers receive only relevant messages.

Pattern

Splitter

Breaks a composite message into a series of individual messages so each element can be processed independently downstream.

Pattern

Message Translator

Converts a message from one data format or schema to another so systems with incompatible representations can communicate.

Pattern

Content Enricher

Augments a message with additional data from an external source when the original lacks information the receiver requires.

Pattern

Polling Consumer

A consumer that explicitly checks a channel for messages on its own schedule, controlling exactly when and how fast it receives them.

Pattern

Event-Driven Consumer

A consumer that is invoked by the messaging system the moment a message arrives, reacting to messages instead of polling for them.

Pattern

Request-Reply

Lets a requestor send a message and receive a corresponding response over messaging, combining two one-way channels into a logical two-way exchange.

Pattern

Correlation Identifier

Tags messages with a unique id that links related messages together, so a reply can be matched to its request and parts to their whole.

Pattern

Wire Tap

Copies messages flowing through a channel to a secondary channel for inspection, logging, or analysis without disturbing the primary flow.

Pattern

Routing Slip

Attaches a sequence of processing steps to a message so it routes itself through a series of components determined per message at runtime.

Pattern

Process Manager

A central component that maintains the state of a multi-step message flow and decides the next step, coordinating complex or branching workflows.

Pattern

Command Query Responsibility Segregation (CQRS)

Separates the write model that handles commands from the read model that serves queries, letting each be optimized, scaled, and evolved independently.

Pattern

Event-Driven Architecture

An architectural style where components communicate by producing and reacting to events, enabling loose coupling, asynchronous flow, and independent scaling.

Pattern

Lambda Architecture

A big-data design that runs a batch layer for accurate historical views and a speed layer for low-latency recent data, merging both at query time.

Pattern

Kappa Architecture

A streaming-first data design that uses a single processing path over an immutable log, reprocessing history by replay instead of a separate batch layer.

Pattern

Idempotent Writer

A pattern that makes repeated writes safe by ensuring duplicate operations produce the same result, essential for at-least-once delivery and retries.

Pattern

Actor Model

A concurrency model where independent actors encapsulate state and communicate only by asynchronous messages, avoiding shared memory and locks.

Pattern

Dead-Letter Queue

Routes messages that cannot be processed after repeated attempts to a separate queue for inspection and recovery, keeping the main pipeline flowing.

Pattern

Poison Message Handling

Detects and quarantines messages that repeatedly crash or block a consumer, preventing one bad message from stalling an entire queue.

Pattern

Webhook

A server pushes event notifications to a client-registered HTTP endpoint as events occur, replacing inefficient polling with real-time callbacks.

Blueprints15

Blueprint

Django Monolith to Services Blueprint

Extract bounded capabilities from a large Django monolith into separate services with their own datastores and async messaging.

Blueprint

Scala Akka Actor Modernization Blueprint

Modernize legacy Scala Akka classic actor systems to typed actors and current streaming APIs while addressing licensing changes.

Blueprint

Synchronous REST to Event-Driven Blueprint

Convert tightly-coupled synchronous REST call chains into an event-driven architecture using a broker, async messaging, and the outbox pattern.

Blueprint

Single Database to Database-per-Service Blueprint

Decompose a shared monolithic database into per-service data stores to enable independent microservice deployment.

Blueprint

Batch to Streaming with Apache Kafka Blueprint

Replace nightly batch ETL with real-time event streaming on Apache Kafka for low-latency data movement.

Blueprint

Batch to Streaming with Amazon Kinesis Blueprint

Convert scheduled batch pipelines to real-time streaming on Amazon Kinesis Data Streams for managed, low-latency ingestion.

Blueprint

Build a Change Data Capture (CDC) Pipeline Blueprint

Stand up a CDC pipeline with Debezium and Kafka to stream database changes in real time to downstream consumers.

Blueprint

Synchronous Calls to Event-Driven (Kafka) Blueprint

Replace brittle synchronous service-to-service calls with asynchronous events on Apache Kafka to decouple services and improve resilience.

Blueprint

Synchronous API to SNS/SQS Fan-Out Blueprint

Decouple synchronous workloads using Amazon SNS topics and SQS queues for durable, buffered fan-out and asynchronous processing.

Blueprint

Point-to-Point Integrations to Message Bus Blueprint

Replace tangled point-to-point integrations with a central message bus and publish/subscribe model to reduce coupling and integration sprawl.

Blueprint

Enterprise Service Bus to Modern Integration Blueprint

Replace a heavyweight enterprise service bus with lightweight integration: API gateway, event streaming, and decentralized integration services.

Blueprint

Webhooks to Event Streaming Blueprint

Evolve unreliable HTTP webhook integrations into a durable event-streaming backbone with replay, ordering, and at-least-once delivery.

Blueprint

Central Orchestration to Choreography (Saga) Blueprint

Replace a central orchestrator coordinating distributed transactions with event-driven choreography using the saga pattern and compensations.

Blueprint

REST Polling to GraphQL Subscriptions Blueprint

Replace client REST polling for fresh data with real-time GraphQL subscriptions over WebSockets for push updates and lower load.

Blueprint

Batch File Transfer to Streaming CDC Blueprint

Replace nightly batch file transfers between systems with real-time change data capture streamed onto an event backbone.

Reference Architectures18

Reference Architecture

Event-Driven Microservices

Architecture pattern for building loosely-coupled microservices using event sourcing and CQRS

Reference Architecture

Event-Driven Microservices on Kubernetes

A Kubernetes-native reference design for loosely coupled microservices that communicate through Kafka events with service-level autoscaling.

Reference Architecture

Serverless API on Azure Functions

An event-driven serverless API built on Azure Functions with Cosmos DB and API Management for pay-per-use, low-operations workloads.

Reference Architecture

Serverless Event Processing Pipeline on AWS

A fully serverless event-ingestion and processing pipeline on AWS using Lambda, EventBridge, and DynamoDB with no servers to operate.

Reference Architecture

CQRS and Event Sourcing on Cloud

A cloud microservices design separating write and read models with event sourcing for full auditability and independent scaling.

Reference Architecture

Real-Time Streaming Platform with Kafka

A real-time streaming platform on Kafka with stream processing, a schema registry, and exactly-once pipelines on Kubernetes.

Reference Architecture

Computer Vision Inference Pipeline on Azure

A reference design for an image and video computer-vision pipeline on Azure spanning ingestion, GPU inference, and human-in-the-loop review.

Reference Architecture

Event-Driven Backbone with Kafka

An organization-wide event streaming backbone on Kafka that decouples producers and consumers through durable, replayable topics.

Reference Architecture

CQRS with Event Sourcing

A command-query separated system where state is derived from an append-only event log and read models are projected for queries.

Reference Architecture

Saga Orchestration for Distributed Transactions

An orchestrated saga design that coordinates multi-service business transactions with compensating actions instead of two-phase commit.

Reference Architecture

Reliable Webhook Delivery Platform

A platform that delivers outbound webhooks to customer endpoints with retries, signing, idempotency, and per-tenant rate control.

Reference Architecture

Pub/Sub Fan-Out for Event Distribution

A publish-subscribe fan-out architecture that broadcasts each event to many independent consumers with per-subscriber queues.

Reference Architecture

Real-Time Notification Delivery System

A real-time notification system that pushes in-app, push, email, and SMS messages to users with preference and channel routing.

Reference Architecture

Event Choreography for Microservices

A choreographed event-driven design where services react to each other's domain events without a central orchestrator.

Reference Architecture

Transactional Outbox for Reliable Events

A transactional outbox design that guarantees events are published exactly when their database changes commit, avoiding dual-write loss.

Reference Architecture

Real-Time Collaboration Application

A web app where many users edit shared documents concurrently, synchronized over WebSockets with conflict-free replicated data.

Reference Architecture

E-Commerce Platform on Microservices

A modular online store splitting catalog, cart, checkout, payments, and orders into independent services with event-driven coordination.

Reference Architecture

SaaS Usage Metering and Billing

An event-driven metering pipeline that records product usage, aggregates it per tenant, and drives usage-based billing.

Playbooks9

Playbook

Domain-Driven Decomposition Program Playbook

A program that uses domain-driven design and event storming to decompose a system into bounded-context services aligned to teams.

Playbook

Event-Driven Architecture Adoption Program Playbook

A program to introduce event-driven communication, a schema registry, and async workflows into a synchronous backend estate.

Playbook

Batch to Streaming Program Playbook

Transform nightly batch data pipelines into real-time streaming pipelines using event-driven architecture and stream processing.

Playbook

CDC and Real-Time Pipeline Program Playbook

Build change data capture pipelines to stream database changes into analytics and event systems with low latency and strong consistency.

Playbook

Schema Evolution and Versioning Program Playbook

Adopt a schema registry and safe evolution practices for event and data schemas to prevent breaking changes across producers and consumers.

Playbook

Event-Driven Architecture Adoption Playbook

A program to adopt event-driven architecture with a streaming backbone, schema governance, and resilient async patterns.

Playbook

ESB to Modern Integration Playbook

A program to migrate from a centralized enterprise service bus to decentralized, event-driven and API-led integration.

Playbook

Webhook Platform Rollout Playbook

A program to build a reliable webhook delivery platform with signing, retries, idempotency, and subscriber management.

Playbook

AsyncAPI Messaging Standardization Playbook

A program to standardize asynchronous messaging contracts with AsyncAPI, schema governance, and contract testing across teams.

Stacks10

Stack

Knative Serverless Containers Stack

Kubernetes-based serverless stack using Knative for scale-to-zero, request-driven container workloads with event-driven autoscaling.

Stack

AWS Serverless Stack

Fully managed AWS serverless stack using Lambda, DynamoDB, and API Gateway for event-driven, pay-per-use applications with no server management.

Stack

Azure Serverless Stack

Managed Microsoft Azure serverless stack using Azure Functions and Cosmos DB for event-driven, globally distributed, pay-per-use applications.

Stack

GCP Serverless Stack

Google Cloud serverless stack using Cloud Run and Firestore for container-based, scale-to-zero applications with managed NoSQL storage.

Stack

Kafka + Flink Streaming Stack

Real-time stream processing stack pairing Apache Kafka for durable event streams with Apache Flink for stateful, low-latency computation.

Stack

Event-Driven Microservices Stack

Asynchronous microservices architecture using Kafka as an event backbone with independently deployable services for loose coupling and scalability.

Stack

Dapr Distributed Application Stack

Polyglot microservices stack using Dapr building blocks for service invocation, state, pub/sub, and bindings, abstracted from underlying infrastructure.

Stack

Kafka + Flink + Iceberg Streaming Stack

Real-time streaming architecture: Kafka transports events, Flink processes them with stateful low-latency compute, and Iceberg lands them in an open lakehouse.

Stack

Vert.x Reactive Stack

A polyglot, event-driven toolkit on the JVM built around a non-blocking event loop and the reactor pattern for high-concurrency, low-latency services.

Stack

Kafka + ksqlDB

A stream-processing stack using Apache Kafka for event transport and ksqlDB for SQL-based streaming transformations and materialized views.

Glossaries7

Glossary

Serverless

Serverless is a cloud execution model in which the provider fully manages servers and scaling, running code in response to events and billing only for actual usage.

Glossary

Function as a Service (FaaS)

Function as a service is a serverless model in which developers deploy individual functions that the cloud provider runs and scales automatically in response to events.

Glossary

Change Data Capture (CDC)

Change Data Capture (CDC) is a technique for identifying and capturing changes made to data in a source database — inserts, updates, and deletes — and streaming them to downstream systems in near real time.

Glossary

Webhook

A webhook is an HTTP callback that one system sends to a user-supplied URL when an event occurs, pushing data to subscribers instead of requiring them to poll for changes.

Glossary

CQRS (Command Query Responsibility Segregation)

CQRS is a pattern that separates the model used to change data (commands) from the model used to read data (queries), allowing each side to be optimized, scaled, and evolved independently.

Glossary

Event Sourcing

Event sourcing is a pattern that stores the full history of changes to application state as an immutable sequence of events, reconstructing current state by replaying those events rather than storing only the latest snapshot.

Glossary

Idempotent Operation

An idempotent operation produces the same result whether it is performed once or many times, so repeating it has no additional effect beyond the first successful application.