Design and Implementation of a High‑Concurrency Flash‑Sale System for Online Real‑Estate Opening

The article explains how to handle massive simultaneous user requests in a flash‑sale scenario by using rate limiting, caching, asynchronous processing, distributed locks, load balancing, and anti‑cheat mechanisms, illustrated with the Sohu Focus online opening system architecture.

Sohu Tech Products
Sohu Tech Products
Sohu Tech Products
Design and Implementation of a High‑Concurrency Flash‑Sale System for Online Real‑Estate Opening

High concurrency refers to a large number of user requests arriving at a server at the same time, requiring the server to process them quickly and return responses. With limited server resources, efficiently handling as many requests as possible is a critical research topic.

As internet services grow, server pressure increases. Simple dynamic pages and databases suffice for low traffic, but high traffic overwhelms traditional architectures, causing crashes. Effective high‑concurrency solutions must consider network requests, server performance, I/O bottlenecks, bandwidth, and more. Common measures include caching, rate limiting, and degradation. Caching relieves pressure and speeds up responses; rate limiting reduces request frequency; degradation disables non‑essential services while keeping core functions (e.g., order placement) available.

The article uses a typical flash‑sale (秒杀) scenario—Sohu Focus online real‑estate opening—as a concrete example. In such scenarios, thousands of users simultaneously attempt to purchase limited inventory, causing a sudden surge in traffic.

Key mitigation strategies are:

Rate limiting: client‑side limits on purchase frequency, server‑side validation, and application‑level algorithms such as leaky‑bucket or token‑bucket.

Caching: hot data is served from cache to reduce database load.

Asynchronous processing: after a successful purchase request, the response is returned immediately and subsequent steps (SMS, DB update) are handled via a message queue.

Sharding/Load balancing: multiple servers behind a load balancer share the load.

The system also emphasizes scalability to handle further growth.

System Architecture Diagram
System Architecture Diagram

Technical details include:

Front‑end rate limiting and multi‑level verification.

NGINX with Lua scripts for anti‑scraping and login rate limiting.

Token generation: client combines timestamp and user ID, hashes it, stores the token in Redis and a cookie; the token is validated on each purchase request.

Distributed non‑blocking locks for user‑frequency and product locks implemented with Redis.

Kafka for asynchronous order processing, SMS notification, and real‑time WebSocket updates to the B‑side dashboard.

Static assets served via CDN; hot data cached in process memory.

Single‑Device Login Diagram
Single‑Device Login Diagram

The purchase flow includes front‑end click throttling, token and signature verification, activity status checks, distributed locks acquisition, Kafka message publishing, and final persistence to the database.

Anti‑cheat measures combine front‑end click frequency control, NGINX/Lua rate limiting, token validation, and a joint front‑end/back‑end signature verification process that encrypts request data on both sides and compares results.

From an operations perspective, the backend services are clustered behind load balancers, database read/write separation is employed, and certain services (e.g., SMS, payment) are isolated into micro‑services to distribute load.

In conclusion, multi‑layer rate limiting, caching, asynchronous processing, and load‑balanced backend architecture dramatically reduce server and database pressure, enabling the system to handle massive concurrent requests while maintaining fairness and stability.

Future upgrades may involve scaling compute resources, sharding databases, expanding Redis clusters, static page caching, and multi‑region deployment to address latency and fairness for globally distributed users.

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.

Distributed SystemsBackend ArchitecturerediscachingKafkahigh concurrencyrate limitingflash sale
Sohu Tech Products
Written by

Sohu Tech Products

A knowledge-sharing platform for Sohu's technology products. As a leading Chinese internet brand with media, video, search, and gaming services and over 700 million users, Sohu continuously drives tech innovation and practice. We’ll share practical insights and tech news here.

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.