Backend Development 16 min read

Design and Evolution of Baidu Short‑Video Push System

This article details the architecture, data flow, module responsibilities, and successive optimizations of Baidu's short‑video push system, covering personalized timing estimation, user‑group management, frequency‑control redesign, and protobuf‑based compression to handle billion‑scale traffic efficiently.

Top Architect
Top Architect
Top Architect
Design and Evolution of Baidu Short‑Video Push System

The short‑video Push system supports multiple Baidu apps (e.g., Haokan Video, Live, Du Xiao Shi) and provides personalized, operational, and real‑time notifications to billions of active users, aiming to increase engagement and retention.

System Overview – The platform consists of a material center, user center, personalized recall, realtime‑API, frequency‑control (UFC), preprocessing, sending, receipt, and control center modules. Tasks are created nightly, pre‑processed half an hour before delivery, and dispatched through a cloud Push middle‑platform to vendor agents or long‑link services.

Data Flow – User behavior logs are ingested into a data center, which generates material tables and user sets. Strategies select materials, create push tasks, and the system writes results to Redis queues. The sending service prioritizes tasks and forwards them to vendor agents, while receipt services log delivery for monitoring and analytics.

Iterative Optimizations

1. Personalized Push Timing – By analyzing user activity windows over the past seven days, the system adjusts the first and last daily push times per user, improving click‑through rates.

2. User‑Group Service – Replaces physical‑machine scripts with bitmap‑based user groups managed via the AMIS platform, enabling logical expressions, bitmap operations, and efficient bitmap‑to‑user‑ID mapping stored in Redis.

3. Frequency‑Control Service (UFC) – Introduces dynamic scaling with consistent hashing, per‑user and per‑type limits, and whitelist handling, reducing resource contention and allowing seamless node expansion.

4. Protobuf Compression – Replaces JSON with Google Protocol Buffers for frequency‑control data, achieving ~2× faster serialization and 75% Redis storage savings.

Conclusion – A well‑designed push system combines robust backend architecture, precise user modeling, and efficient data handling to deliver timely, relevant notifications at massive scale, ultimately driving higher user activity and retention.

architecturepersonalizationscalabilitydistributed systemnotificationPushfrequency control
Top Architect
Written by

Top Architect

Top Architect focuses on sharing practical architecture knowledge, covering enterprise, system, website, large‑scale distributed, and high‑availability architectures, plus architecture adjustments using internet technologies. We welcome idea‑driven, sharing‑oriented architects to exchange and learn together.

0 followers
Reader feedback

How this landed with the community

login 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.