Messaging Protocol
38 items tagged with "messaging-protocol"
Patterns16
Publish-Subscribe
Decouples senders from receivers by routing messages through a broker or channel so publishers and subscribers never reference each other.
Transactional Outbox
Reliably publishes messages by writing them to an outbox table in the same local transaction as the business data change.
Change Data Capture (CDC)
Captures row-level changes from a database's transaction log and streams them as events to downstream consumers.
Scatter-Gather
Broadcasts a request to multiple recipients in parallel, then aggregates their replies into a single response.
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.
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.
Publish-Subscribe Channel
Broadcasts each message to all interested subscribers so one event can notify many independent consumers without the publisher knowing them.
Message Filter
Lets only messages meeting specified criteria pass through a channel and silently discards the rest, so consumers receive only relevant messages.
Polling Consumer
A consumer that explicitly checks a channel for messages on its own schedule, controlling exactly when and how fast it receives them.
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.
Idempotent Receiver
Makes a consumer safely handle duplicate messages so that processing the same message more than once has the same effect as processing it once.
Dead Letter Channel
Routes messages that cannot be delivered or processed to a dedicated channel for inspection and recovery instead of discarding or blocking them.
Guaranteed Delivery
Persists messages so they are not lost if the sender, broker, or receiver fails, ensuring each message is eventually delivered despite outages.
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.
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.
Poison Message Handling
Detects and quarantines messages that repeatedly crash or block a consumer, preventing one bad message from stalling an entire queue.
Tutorials3
How to decouple services with Amazon SQS
Use Amazon SQS queues to decouple producers and consumers, with dead-letter queues and Lambda triggers.
How to fan out events with Amazon SNS
Publish events to an Amazon SNS topic and fan them out to multiple SQS queues and Lambda subscribers.
How to route events with Amazon EventBridge
Build an event-driven workflow with Amazon EventBridge using event buses, rules, and pattern-based routing.
Blueprints5
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.
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.
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.
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.
Webhooks to Event Streaming Blueprint
Evolve unreliable HTTP webhook integrations into a durable event-streaming backbone with replay, ordering, and at-least-once delivery.
Reference Architectures7
Event-Driven Backbone with Kafka
An organization-wide event streaming backbone on Kafka that decouples producers and consumers through durable, replayable topics.
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.
iPaaS Integration Hub for SaaS Connectivity
An integration platform-as-a-service hub that connects SaaS and on-prem systems with connectors, transformation, and orchestration.
High-Volume Streaming Ingestion Pipeline
A streaming ingestion pipeline that captures high-velocity event data, buffers it durably, and lands it for real-time and batch use.
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.
Change Data Capture Streaming Pipeline
A change-data-capture pipeline that streams database changes as events to keep downstream systems and caches in sync in near real time.
Asynchronous Task Queue with Workers
A durable task queue that offloads slow or unreliable work from request handlers to scalable background workers with retries.
Playbooks2
Event-Driven Architecture Adoption Playbook
A program to adopt event-driven architecture with a streaming backbone, schema governance, and resilient async patterns.
AsyncAPI Messaging Standardization Playbook
A program to standardize asynchronous messaging contracts with AsyncAPI, schema governance, and contract testing across teams.
Comparisons3
Kafka vs RabbitMQ
Distributed event-streaming log versus a flexible, feature-rich message broker for traditional queuing.
Kafka vs Pulsar
Mature event-streaming standard versus Apache Pulsar's segmented storage and built-in multi-tenancy.
Pulsar vs Kinesis
Open-source, self-hostable streaming with built-in multi-tenancy versus AWS Kinesis, a fully managed streaming service on AWS.