Build a Pub/Sub Message Broker
Build a publish/subscribe message broker with topics, subscriptions, and delivery guarantees.
Requirements
Topics: create, list, deleteSubscriptions: subscribe to topics, unsubscribePublish messages to topics, deliver to all subscribersAt-least-once delivery: messages persist until acknowledgedMessage acknowledgment: subscriber confirms receiptDead letter topic: unacknowledged messages after 3 retriesDashboard: topic list, message rates, subscriber counts, pending messagesHTTP API for all operationsTechnical Notes
Store messages in a database. Messages have a visibility timeout. Delivery via push to endpoints or pull via API.
Bonus Points
Message filtering (attribute-based routing)Fan-out patterns (one message to many subscribers)Message ordering guarantees per topic