Skip to content

Instantly share code, notes, and snippets.

@renatoargh
Created April 2, 2025 22:02
Show Gist options
  • Save renatoargh/ac21f62a1096727a16e7f91870dd6370 to your computer and use it in GitHub Desktop.
Save renatoargh/ac21f62a1096727a16e7f91870dd6370 to your computer and use it in GitHub Desktop.
[
{
"category": "Messaging Systems",
"patterns": [
{ "title": "Message Channel", "description": "A conduit through which messages travel from sender to receiver." },
{ "title": "Message", "description": "The data or information being transported between systems." },
{ "title": "Pipes and Filters", "description": "A series of processing steps (filters) connected by channels (pipes)." },
{ "title": "Message Router", "description": "Routes messages to different destinations based on specific criteria." },
{ "title": "Message Translator", "description": "Converts message formats between systems." },
{ "title": "Message Endpoint", "description": "Interface between the messaging system and the application." }
]
},
{
"category": "Messaging Channels",
"patterns": [
{ "title": "Point-to-Point Channel", "description": "A channel that ensures only one receiver gets each message." },
{ "title": "Publish-Subscribe Channel", "description": "A channel where multiple subscribers can receive published messages." },
{ "title": "Datatype Channel", "description": "A channel dedicated to a specific message type." },
{ "title": "Invalid Message Channel", "description": "A channel for capturing messages that failed validation." },
{ "title": "Dead Letter Channel", "description": "A channel for messages that cannot be processed successfully." },
{ "title": "Guaranteed Delivery", "description": "Ensures that a message reaches its destination despite failures." },
{ "title": "Channel Adapter", "description": "Connects external systems to messaging channels." },
{ "title": "Messaging Bridge", "description": "Links two messaging systems and relays messages between them." },
{ "title": "Message Bus", "description": "A shared communication infrastructure enabling loosely coupled messaging." }
]
},
{
"category": "Message Construction",
"patterns": [
{ "title": "Command Message", "description": "A message instructing the receiver to perform an action." },
{ "title": "Document Message", "description": "A message containing data without requesting any specific action." },
{ "title": "Event Message", "description": "A message signaling that something has happened." },
{ "title": "Message", "description": "The fundamental unit of data exchanged in a messaging system." },
{ "title": "Message Header", "description": "Contains metadata to help process the message." },
{ "title": "Message Body", "description": "Holds the primary content or data of the message." }
]
},
{
"category": "Message Routing",
"patterns": [
{ "title": "Content-Based Router", "description": "Routes messages based on their content." },
{ "title": "Message Filter", "description": "Removes messages that don't meet specific criteria." },
{ "title": "Dynamic Router", "description": "Routes messages using runtime-determined logic." },
{ "title": "Recipient List", "description": "Sends a copy of the message to a list of recipients." },
{ "title": "Splitter", "description": "Breaks a message into multiple parts for processing." },
{ "title": "Aggregator", "description": "Combines multiple related messages into a single one." },
{ "title": "Resequencer", "description": "Reorders messages based on a defined sequence." },
{ "title": "Composed Message Processor", "description": "Processes individual elements of a message independently." },
{ "title": "Scatter-Gather", "description": "Distributes a message to multiple recipients and aggregates the responses." },
{ "title": "Routing Slip", "description": "Attaches a routing plan to a message, guiding its path." },
{ "title": "Process Manager", "description": "Orchestrates complex message flows across multiple steps." }
]
},
{
"category": "Message Transformation",
"patterns": [
{ "title": "Message Translator", "description": "Converts message formats between applications." },
{ "title": "Envelope Wrapper", "description": "Adds metadata to a message to facilitate processing." },
{ "title": "Content Enricher", "description": "Adds missing data to a message from external sources." },
{ "title": "Content Filter", "description": "Removes unnecessary parts of a message." },
{ "title": "Claim Check", "description": "Stores part of the message externally and references it with a token." },
{ "title": "Normalization", "description": "Converts messages to a common format." },
{ "title": "Canonical Data Model", "description": "A standard format used across systems for easier integration." }
]
},
{
"category": "Messaging Endpoints",
"patterns": [
{ "title": "Messaging Gateway", "description": "Encapsulates messaging logic behind a service-like interface." },
{ "title": "Messaging Mapper", "description": "Maps internal data structures to message formats." },
{ "title": "Transactional Client", "description": "Ensures message handling participates in a transaction." },
{ "title": "Polling Consumer", "description": "Actively polls for new messages." },
{ "title": "Event-Driven Consumer", "description": "Listens for and reacts to incoming messages." },
{ "title": "Competing Consumers", "description": "Multiple consumers read from the same channel for load balancing." },
{ "title": "Message Dispatcher", "description": "Sends messages to appropriate handler(s) within an application." },
{ "title": "Selective Consumer", "description": "Consumes only specific messages from a channel." },
{ "title": "Durable Subscriber", "description": "Remains subscribed to messages even when offline." },
{ "title": "Idempotent Receiver", "description": "Handles duplicate messages without side effects." },
{ "title": "Service Activator", "description": "Invokes application logic in response to messages." }
]
}
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment