By Heyi
"Do we need to scale out further?"
"Scale out by a factor of ten, and then we'll talk."
Li Nuo, Co-Founder and CTO of Onion Academy, has talked about scaling many times. In response to the COVID-19 pandemic, schools across Mainland China postponed the beginning of term this year and held classes online. Online education produced network traffic spikes that far exceeded expectations and required constant scale-out.
When Li Nuo discussed this work with Yang Linfeng, Co-Founder and CEO of Onion Academy, Yang Linfeng wrote an open letter to users. As the COVID-19 pandemic wreaked havoc across Mainland China, Onion Academy received a lot of attention from the public and had the opportunity to mine the value of traffic. In Yang's opinion and based on his personal experience, homeschooling is a challenge for every student.
According to Li Nuo, it was a daunting task for the Onion Academy to maintain stable server operations and a good user experience as their traffic spiked.
In December 2013, Yang Linfeng, Zhu Ruochen, and Li Nuo co-founded Onion Academy (formerly known as Onion Mathematics.) It is an online education company that specializes in K-12 education and the development of an online education platform for human-machine interactive learning. Onion Academy initially provided mathematics courses for junior high school students and offered other courses later. Onion Academy built an online curriculum system based on the national curriculum standards and teaching materials. The system provides 5 to 8-minute videos explaining each knowledge point in textbooks based on in-depth research and design. These courses offer a personalized educational experience for students.
Human-machine interactive learning is now at the forefront of education. Soon after Onion Academy was established, the founding team made a farsighted decision to build a complete business system based on Alibaba Cloud.
Initially, Onion Academy did not grow as fast as other online education companies. According to Li Nuo, the team spent the majority of its effort on course development and learning experience optimization. For example, it took them four years to develop video courses for junior high school mathematics. Onion Academy has gained a strong foothold in the online education sector after a lot of persistence. The COVID-19 pandemic caused the demand for online education to increase sharply in a short time. In the past, online education companies had to make great efforts to promote themselves. After the beginning of the COVID-19 pandemic, everyone turned to these companies and expected them to provide high-quality online courses.
On January 28, 2020, Onion Academy announced a course donation plan to offer all 2,650 of its major courses developed over the past six years free of charge during the pandemic. However, Onion Academy had to deal with heavy traffic that far exceeded expectations. According to the statistics of Qianfan Analysis, Onion Academy served 7.9592 million active users in February 2020, a year-on-year increase of 151%.
Onion Academy used Alibaba Cloud Container Service to deal with highly concurrent access traffic spikes and ensure business stability based on the suggestions of Alibaba Cloud Technical Experts. The Container Service can allocate resources based on the configuration requirements of different modules and automatically scale containers based on defined rules. This avoids complex scheduling and maintenance.
The Container Service can scale out underlying resources in minutes, allowing a business to deploy thousands of application instances quickly. For its tenfold scale-out, Onion Academy optimized the configurations of its many low-specification Elastic Compute Service (ECS) instances by upgrading them to 30 to 50 cores. This made O&M more convenient. After Onion Academy adopted Container Service, its system resource utilization rate improved by about 60%. When problems occur, they can be detected and isolated quickly. When faced with a sharp increase in business volume, they can also expand their business support capacity quickly. Onion Academy uses the native monitoring products provided by Alibaba Cloud to detect faults quickly and respond promptly, which can monitor and trigger alerts for all kinds of problems. This significantly shortens the time needed to find problems.
As a typical Internet company, Onion Academy has adopted a forward-looking vision from the moment it adopted cloud migration in 2013 to its current cloud-native usage.
The development of cloud-native in recent years has not been a smooth process.
Migrating applications to the cloud has become an irreversible trend. In recent years, many enterprises have gone through digital transformations to digitalize their businesses by accelerating technology iteration in terms of business channels, competition patterns, and user experience.
Fast technology iteration relies on the powerful capabilities of the cloud. Enterprises must fully utilize the availability and scalability of cloud technology to improve the efficiency of release and O&M. Enterprises must redevelop their infrastructures, architectures, and platforms and redesign their development, deployment, and maintenance methods based on the features of the cloud to develop cloud-based or cloud-native applications.
As predicted by Gartner in 2019, we are now in the cloud-native era. Within the next three years, 75% of global enterprises will deploy containerized applications in their production environments. Cloud-native technology applies to cloud computing. Microservices, containers, and Kubernetes continue to provide effective applications and standards to implement edge computing, which is independent of and collaborative with cloud computing.
In the past, when an enterprise wanted to build a cloud-native platform through cloud-native technology or products, it had to extensively research open-source projects and conduct O&M and management manually while considering integration and stability assurance. Alibaba Cloud provides a complete cloud-native product family with powerful service level agreement (SLA) assurance to allow enterprises and developers to use cloud-native technology and products, better understand the cloud-native concept, and ensure business reliability, performance, and continuity.
Alibaba Cloud has helped a lot of Chinese enterprises understand and use cloud-native technology. Alibaba has applied and optimized cloud-native technology in a variety of large-scale internal scenarios. This has allowed Alibaba to contribute the mature cloud-native technology to the community to help raise its technological quality and development level.
As cloud computing and cloud-native are widely used, more businesses and decision-makers will realize that cloud-native is key to business technology innovation and the shortest path to digital transformation. Therefore, forward-thinking Internet companies will develop cloud applications from scratch. Enterprises and institutions in the new retail, government, finance, and medical fields are carefully migrating their business applications to the cloud to take full advantage of the value of cloud-native technology and architecture.
Chanjet is China's leading cloud service and software provider for small and micro businesses, currently providing smart cloud services to more than four million clients. Boosted by rapid business growth, Chanjet ventured into the cloud-native field when its IT Team made many microservice transformations to its original IT system to adapt to the fast iteration and frequent release of large Internet applications.
Next, Chanjet proceeded to cloud service provision through the Software as a Service (SaaS) model. This was a daunting challenge during the microservice transformation process and arose from a series of factors, such as large user volumes, complex businesses, long traces, and deep integration with third-party application systems. Application upgrades may cause the entire system to stop responding if the new version release process does not go as expected.
To solve this pain point, the Chanjet IT Team reached out to Alibaba Cloud Technical Experts because Alibaba has experience developing and applying cloud-native technology to its complex business scenarios. Chanjet gradually migrated its microservices model to Alibaba Cloud Enterprise Distributed Application Service (EDAS). Microservice applications based on Spring Cloud can be directly deployed in EDAS without code modification. The migration process is smooth and transparent to Chanjet users. Now, Chanjet can keep up with frequent version iteration to meet complex business needs.
After Chanjet could leverage the advantages of cloud-native technology and products, it started to use related methodologies to implement end-to-end and phased microservice governance.
Unlike most computing models, serverless architecture separates deployment from O&M to free developers from tasks, such as building application runtime environments, installing operating systems, configuring networks, and calculating the required CPU resources. In architecture abstraction, the cloud starts a business process or schedules a running business process to handle inbound business traffic or events. Afterward, the cloud stops the business process or schedules it to run upon the next trigger. This means the cloud handles all runtimes by itself.
Serverless applies to event-driven data computing tasks, applications based on the request-response model that have short calculation times, and long-term tasks without complex mutual calling.
Baifu Travel is the world's leading online tourism trade platform. It provides travel agencies worldwide with an all-in-one smart solution based on cloud computing and big data decision-making. To date, Baifu Travel has concluded business partnerships with more than 600 airlines, all Chinese train lines, 2,500 bus stations, and more than 60 cruise groups, with a presence in more than 100 countries and regions worldwide.
After rapid business growth, the Baifu Travel Technology Team built a comprehensive microservices model based on open-source frameworks, such as Spring Cloud. After microservice applications are deployed on the cloud, the Technology Team is freed from O&M tasks, such as hardware purchase and server setup, so they can devote more effort to business operations. However, a series of problems occur as system iterations become more frequent.
In a system architecture, there are no differences between a microservice deployed on a cloud virtual machine (VM) and a microservice deployed in a physical data center. The team still has to perform underlying O&M tasks for each application instance, such as operating system tuning, disk capacity planning, and installation of Java Development Kit (JDK) and other components. These tasks are necessary for running each cloud VM.
Each developer or development team must create an independent test environment to deal with frequent system iteration. Over time, the Technology Team has created multiple test environments, some of which contain all microservice applications. This significantly lowers resource utilization and wastes a lot of resources. The microservices model can scale out each application to adapt to the seasonal fluctuations in the tourism sector. However, many resources will remain idle if the VMs required for scale-out must be purchased in advance.
The problem of idle and wasted resources can be solved by serverless. Serverless architecture can avoid resource waste through auto scaling. Serverless applications can apply for resources as needed without having to purchase underlying server resources. This frees the Technology Team from complex O&M tasks, such as capacity planning and operating system tuning.
The Technology Team surveyed common serverless implementation methods and products to select a suitable serverless architecture.
Serverless architecture can be implemented through two methods. In the first method, each microservice application is containerized and then orchestrated by Kubernetes. Cloud service providers offer elastic container instances that can be called as needed at the container layer. This method is highly demanding. The serverless architecture must be managed by an O&M Team that specializes in Kubernetes, and application containerization is a project that demands great effort to complete. Therefore, this method does not apply to small and efficient technology teams like Baifu Travel.
The second method is to refactor the complete business logic into functions through a computing engine, such as AWS Lambda or Alibaba Cloud Function Compute. This method requires re-coding and cannot bring the benefits of serverless to minor areas with complex traces. Therefore, it was not suitable.
After several rounds of technical research and in-depth exchanges with Alibaba Cloud Technical Experts, the Baifu Travel Technology Team chose Alibaba Cloud Serverless App Engine (SAE). Unlike other serverless solutions, SAE directly supports Spring Cloud, Apache Dubbo, and other development frameworks. Developers can deploy serverless applications using WAR packages, JAR packages, or images without learning Kubernetes and container technology. The microservice applications deployed in SAE can apply for resources as needed, and resources are billed in pay-as-you-go mode every minute. This avoids unnecessary fees incurred during idle hours. SAE allows developers to start and stop test environments with a few clicks, avoiding idle resources. SAE helped Baifu Travel significantly reduce its investment in cloud resources and reduce its O&M workload by more than half. This laid the foundation for subsequent business innovation.
Companies that have confidence in and want to implement new technologies or new technical concepts are the drivers behind the wide acceptance and fast development of these technologies and concepts. These companies have benefited the most from exploring cloud computing. Innovative companies, such as Onion Academy, Chanjet, and Baifu Travel, tend to embrace changes and come up with new ideas. When we look back at the growth of these companies in 5 or 10 years, we will see how they were the creators of a vigorous era full of possibilities and cutting-edge innovators ahead of the curve.
Serverless Service Selection - Choosing What's Right for You
Lagou Uses Function Compute to Build an Online Programming System
206 posts | 12 followers
FollowAlibaba Cloud Community - December 18, 2023
Alibaba Clouder - December 31, 2020
Alibaba Clouder - November 2, 2020
Alibaba Cloud_Academy - November 18, 2019
Alibaba Clouder - December 28, 2020
Alibaba Developer - March 3, 2020
206 posts | 12 followers
FollowAlibaba Cloud Function Compute is a fully-managed event-driven compute service. It allows you to focus on writing and uploading code without the need to manage infrastructure such as servers.
Learn MoreMSE provides a fully managed registration and configuration center, and gateway and microservices governance capabilities.
Learn MoreVisualization, O&M-free orchestration, and Coordination of Stateful Application Scenarios
Learn MoreServerless Application Engine (SAE) is the world's first application-oriented serverless PaaS, providing a cost-effective and highly efficient one-stop application hosting solution.
Learn MoreMore Posts by Alibaba Cloud Native
Dikky Ryan Pratama May 30, 2023 at 2:54 am
awesome!