How to Build a Super‑Stable Serverless Platform: Lessons from Midway’s 2020 Journey
This article reviews Midway's 2020 Serverless rollout, detailing how strong/weak dependency analysis, traffic‑model estimation, and multi‑layer traffic control were combined to achieve ten‑fold scale growth and robust stability for Node.js Serverless services across Alibaba's businesses.
From the Big Promotion
In December 2020, a 20‑minute micro‑talk introduced the Midway Serverless framework, which complements the MidwayJS ecosystem and supports large‑scale Node.js Serverless workloads across Alibaba business units such as Taobao, Fliggy, Kaola, and Amap, achieving ten‑fold growth in scale and six‑fold traffic increase.
Stability Assurance
After a 2020 “R&D mode upgrade”, the publishing platform, build system, and debugging capabilities were rebuilt to meet production requirements. Growing business demand forced the addition of three stability measures for Node.js Serverless during the 2020 double‑promotion period.
Strong/Weak Dependency Analysis
The first measure identifies downstream dependencies as either strong (directly affecting the service) or weak (minimal impact). Using Alinode’s monitoring data, the system visualizes these dependencies, allowing teams to reduce risk by refactoring, adding caching, or isolating errors, without necessarily converting all strong dependencies to weak ones.
Ainode is Alibaba’s Node.js runtime providing monitoring, diagnostic, and optimization capabilities.
Traffic Model Estimation
The second measure estimates traffic in Serverless scenarios, focusing on total request volume rather than container count. It calculates per‑container QPS and concurrency to set function concurrency limits, and uses gateway‑level traffic measurement to dynamically adjust instance reservations and elasticity, preventing overload.
Concurrency estimation relies on congestion‑control algorithms and requires platform infrastructure support.
Multi‑layer Traffic Control
The third measure implements runtime traffic control across multiple gateways: a general gateway, a function‑specific gateway, and the function containers themselves. Each layer enforces limits, and function containers include avalanche protection to avoid cascading failures when one container becomes unavailable.
This micro‑share summarizes a year of Serverless stability practices, offering insights for developers aiming to build reliable Serverless services.
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.
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.
