Building a High‑Throughput, Highly Available Message Center with RocketMQ, ES, and Kubernetes
This article outlines the technical and business goals, design architecture, technology selection, and operational considerations for creating a message center capable of handling 10,000 messages per second upstream and 1,000 downstream, while ensuring 100% high availability and easy integration with third‑party push services.
Goal
Technical goal: Achieve an upstream message‑queue API throughput of 10,000 messages/second and downstream delivery to third‑party platforms at 1,000 messages/second (based on the third‑party’s own capacity limits); ensure the message center is 100% highly available.
Business goal: Integrate new requirements, designate the architecture team as the message center owner, and provide timely responses to business issues.
Product goal: Support message status queries, enable simple message specifications for rapid (≈5 minutes) integration, and standardize message templates.
Prototype
Functional requirements include support for Alibaba Cloud SMS, WeChat public account, app push, unified in‑site messages, and Enterprise WeChat (applications and personal). The system must provide message template management, account management, message search, and bulk sending.
Technical Solution
Business deployment interaction diagram:
Core business logic interaction diagram:
Technology selection:
RocketMQ – Advantages: excellent performance, single instance can reach 100k msgs/sec; scalability via partitions. Disadvantages: some features not supported (e.g., message recall), certain database‑level functionalities must be omitted.
Elasticsearch (ES) – Advantages: handles billions of records, fast keyword search, real‑time sync performance. Disadvantages: slightly weaker concurrent insert capability; high‑throughput sync may stress ES and require testing.
Design Overview
1. RocketMQ provides three queues: normal delivery, retry (with various delay mechanisms), and result (for over‑limit or success notifications).
2. ES synchronizes messages from all three queues, ensuring eventual consistency via latest‑timestamp verification.
3. MySQL stores only template, account, and other basic management data.
Underlying Framework and Operations
1. Unified Gateway : Spring Cloud Gateway or Kong for API routing.
2. Base Framework : Fixed versions of JARs, ES, RocketMQ, real‑time alerting, and performance monitoring; wrap these interfaces for secondary encapsulation (ES supports SQL‑mode insert/query; RocketMQ logic is abstracted).
Reference: BSF unified basic framework
3. Business Framework : Standard HTTP/RPC input‑output tools and protocol support.
4. High Availability : Deploy with Kubernetes and Docker, integrated DevOps pipeline for one‑click release, rollback, rolling updates, and zero‑downtime deployments.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
ITFLY8 Architecture Home
ITFLY8 Architecture Home - focused on architecture knowledge sharing and exchange, covering project management and product design. Includes large-scale distributed website architecture (high performance, high availability, caching, message queues...), design patterns, architecture patterns, big data, project management (SCRUM, PMP, Prince2), product design, and more.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
