← ClaudeAtlas

public-rabbitmq-expert-baselisted

RabbitMQ 知识基座。覆盖 Exchange Types、Queue & Routing、Durability、Dead Letter、Confirmations。供 devlab-rabbitmq-usage 通过 extends 继承。
seed-forge/harness-ai-kit · ★ 22 · AI & Automation · score 74
Install: claude install-skill seed-forge/harness-ai-kit
# RabbitMQ Knowledge Base > **Source**: Adapted from [mindrally/skills](https://github.com/mindrally/skills) (rabbitmq-development) and RabbitMQ official documentation. ## Exchange Types | Type | Routing | Use for | |------|---------|---------| | Direct | Exact routing key match | Point-to-point, RPC | | Topic | Wildcard pattern (`*.info`, `#`) | Flexible pub/sub | | Fanout | Ignore routing key, broadcast to all bound queues | Broadcast notifications | | Headers | Match on message headers (not routing key) | Complex routing rules | - Default exchange (empty name): direct routing by queue name. Convenient but not recommended for production. - Always declare exchanges explicitly; don't rely on auto-created exchanges. ## Queue & Routing - Declare queues with `durable=true` for persistence across broker restarts. - Bind queues to exchanges with routing keys. - Use `x-message-ttl` for message expiration. - Use `x-max-length` to cap queue size (drop or dead-letter oldest). - Prefetch count (`basic_qos`): limit unacknowledged messages per consumer. ## Durability & Reliability - `durable=true` on queue + `persistent` delivery mode on message = survive broker restart. - Publisher confirms: `confirm_select()` → broker acknowledges message receipt. - Consumer acknowledgments: `basic_ack` (success) / `basic_nack` (failure, requeue or dead-letter). - Never use `auto_ack=true` in production (message loss on consumer crash). ## Dead Letter Exchange (DLX) - Messages are dead-lettered w