How Dada Delivery Platform Scaled to 8 Million Orders per Day for Double‑11
This article explains how Dada's order platform was refactored from a Python Flask service to a Java‑based microservice architecture, employing load testing, circuit breaking with Hystrix, and multi‑datacenter disaster recovery to reliably handle eight million orders in a single day during the Double‑11 shopping festival.
Author Introduction: Zhang Min, head of Dada Delivery's order platform, has over ten years of Java development and architecture experience and led his team to refactor the order system, successfully bearing the pressure of 8 million orders in a single day during Double‑11.
Preface Double‑11 has become an annual shopping extravaganza that generates massive traffic for e‑commerce platforms. Dada‑JD Daojia, as a key logistics partner, must handle an avalanche of delivery orders; this article outlines how they manage a single‑day volume of 8 million orders.
Service Refactoring The original backend was built with Python's Flask framework, which suited rapid iteration but could not sustain the growing request volume. The team adopted a high‑cohesion, low‑coupling approach, vertically separating business domains, rewriting Python services in Java, and partitioning databases per business line.
Business is split by domain model for vertical isolation. Python services are rewritten in Java. Databases are separated according to business boundaries.
Refactoring is both an architectural design challenge and a migration effort; a follow‑up article will detail the concrete steps taken.
Load Testing – The Alchemy of Quality Whether a large corporation or a startup, anticipating a traffic surge requires thorough pressure testing. The key metric is TPS, calculated as:
TPS = Concurrency / Average Response Time
Services are expected to respond within milliseconds; otherwise, cumulative latency across dozens of downstream services can cause user‑visible delays of minutes.
Circuit Breaking – The Defensive Fortress Before major promotions, R&D receives estimated order volumes and conducts stress tests at multiples of the forecast. Since estimates can be off, a safety net is required. When a metric such as response time exceeds 1000 ms, a circuit breaker rejects further requests, protecting downstream databases. Dada uses Hystrix to implement this strategy.
Multi‑Datacenter Disaster Recovery – Having Three Burrows Risk diversification is essential: companies either host their own servers in IDC facilities or use cloud virtual machines. Regardless of the choice, a backup strategy is needed to keep services alive if an entire data center fails. Disaster recovery across multiple sites involves data synchronization, traffic switching, and other operational considerations.
Conclusion Double‑11 offers countless discussion topics; this piece provides a high‑level overview of Dada‑JD Daojia's response measures, with more detailed technical deep‑dives to follow.
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.
Dada Group Technology
Sharing insights and experiences from Dada Group's R&D department on product refinement and technology advancement, connecting with fellow geeks to exchange ideas and grow together.
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.
