Inside WeChat Moments: How 1 Billion Daily Posts Are Managed at Scale

This article summarizes Chen Ming’s 2015 ArchSummit talk on WeChat Moments, detailing its massive posting volume, core database tables, publishing and reading workflows, and the multi‑data‑center disaster‑recovery architecture that ensures seamless, loss‑less service worldwide.

Java High-Performance Architecture
Java High-Performance Architecture
Java High-Performance Architecture
Inside WeChat Moments: How 1 Billion Daily Posts Are Managed at Scale

This article compiles information from Chen Ming’s 2015 ArchSummit presentation titled “WeChat Moments Technical Path”. The audio was unclear, so the notes may be incomplete.

WeChat Moments sees over 1 billion posts and more than 100 billion views daily, making its technical approach worth studying.

Core Data Tables

Four main tables are used:

Post : stores each user’s basic post information such as image count, image URLs, visibility settings, etc.

Album : an index table that records all content a user has published; it is small and only keeps references to the posts.

Comment : contains comments and likes associated with a specific post.

Timeline : records the posts of all friends for a given user.

Publishing Workflow

The client uploads images to the nearest CDN and obtains image URLs.

The client sends the post details (image URLs, text, etc.) to the Moments backend.

The backend writes the post details into the Post table.

The index of the new post is written into the Album table.

All friends’ Timeline tables are batch‑updated with the new post index.

Reading Workflow

The user reads their Timeline, retrieving the set of post indexes from friends.

For each post index, the client fetches the post details and reads associated comments and likes from the Comment table.

Disaster‑Recovery Design

WeChat operates four global data centers:

Shanghai – serves northern China users.

Shenzhen – serves southern China users.

Hong Kong – serves Southeast Asia, the Middle East, and Africa.

Canada – serves the Americas and Europe.

Each data center contains multiple zones (e.g., zones A, B, C in Shanghai). Every zone is connected to both China Telecom and China Unicom with excess bandwidth. If any zone fails (e.g., zone C), the client automatically switches to the remaining zones, which have sufficient capacity to handle all traffic without loss or noticeable impact.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

BackendScalabilitySystem Designdisaster recoveryWeChatMoments
Java High-Performance Architecture
Written by

Java High-Performance Architecture

Sharing Java development articles and resources, including SSM architecture and the Spring ecosystem (Spring Boot, Spring Cloud, MyBatis, Dubbo, Docker), Zookeeper, Redis, architecture design, microservices, message queues, Git, etc.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.