Watch the replay of the Apsara Conference 2022 at this link!
By Haoran Yang
On November 3, at the Apsara Conference 2022 in Hangzhou, Jianfeng Zhang (President of Alibaba Cloud Intelligence) said, “A new computing system with the cloud as the core is taking shape. New changes are taking place in the software research and development paradigm. Serverless is one of the most important trends. Alibaba Cloud will firmly make its core products comprehensively Serverless so that customers can better realize agile innovation.
This article discusses the inevitability of cloud computing becoming serverless in an all-around way.
The business development demands of enterprises have always been the main force driving the evolution of software architecture and R&D models. Enterprises expect to be more agile when coping with the growth of business scale and complexity, releasing products to market faster, and accelerating business innovation. This requires technology to achieve rapid iteration of large-scale and complex software.
The traditional enterprise-level application architecture is usually monolithic, with all modules coupled and released simultaneously. This monolithic architecture application is easy to manage initially, but its complexity will increase as the business develops. This strongly-coupled architecture brings many conflicts during development, testing, and O&M, slowing down the entire iteration. For example, the development of the entire application requires all modules to adopt a unified language and framework technology stack. If a basic library is shared by multiple modules and one of the modules wants to upgrade to a new version, everyone needs to upgrade at the same time, even if others do not need the new version. The release rhythm of all modules is forcibly bound. A problem with one module will affect the release of the entire application. It also becomes difficult to fix online issues of a module quickly because this requires merging with ongoing changes of other modules to resolve conflicts, republish the entire application, and run all the tests. After that, it can be republished.
Soon, the monolithic application architecture can no longer meet the requirements of software R&D efficiency and is replaced by the Internet distributed architecture with microservices as the main feature.
After adopting the microservices model, the application consists of independent services. These services are loosely coupled and interact through API calls, event triggers, or data streams. Each service completes a specific function and is independently developed, run, and released. Microservices solve the R&D efficiency bottleneck of monolithic architecture but put forward high requirements on the infrastructure of applications. For example, detailed integration and end-to-end testing are required to ensure that independently developed microservices can coordinate as expected. The number of times an application is deployed in a test environment is typically ten times higher than in a production environment. If the application infrastructure fails to provide an independent test environment quickly, test time will be consumed in solving environmental stability problems.
According to the research and development statistics of Alibaba Group, one person’s R&D per day usually corresponds to 5-7 persons' testing per day. The test environment has become the biggest pain point for Alibaba Group to improve its R&D efficiency. The loose coupling of microservices poses great challenges to database usage, state management, problem diagnosis, and application delivery pipeline. The complexity of microservices and solutions has been discussed a lot in the industry and will not be repeated here. The implementation complexity of the Internet distributed architecture with microservices as the core is high. It must be supported by good tools and platforms, which is the consensus of the industry.
All work in the software R&D process can be divided into the following three categories:
Of these three categories of work, only the first one brings real value to the business and is closely related to the core competitiveness of the enterprise. However, with the increase in software complexity, categories 2 and 3 consume a lot of R&D resources. Minimizing the complexity of categories 2 and 3 as much as possible to allow customers to focus on business logic development is an inevitable trend for the development of software architecture and R&D models.
Over the past decade, the open-source community and cloud vendors have abstracted non-functional code development and application infrastructure management into standardized and reusable software/services in different areas.
|Software/Service Name||Category||Reduce Non-Functional Code Development||Simplify Application Infrastructure Management|
|Alibaba Cloud Object Storage||Serverless Cloud Service||High availability, high elasticity, and integration capabilities, including SDK and event triggering||Users do not need to manage servers and other infrastructure.|
|Alibaba Cloud Container Service||Semi-Managed Cloud Service||None||It provides managed Kubernetes and simplifies container infrastructure by Kubernetes.|
|Apache Kafka||Make Self-Built Software Available||It builds fault tolerance internally and provides various integration capabilities (such as SDK and connector).||None|
Serverless is a broad concept and is not limited to computing. In general, a service that meets the following conditions can be called a Serverless service.
Therefore, the core value of Serverless is to eliminate non-functional code development for customers as much as possible and simplify application infrastructure management to improve R&D efficiency.
Jianfeng Zhang (President of Alibaba Cloud Intelligence) said, “Serverless makes cloud computing change from a resource to a capability. In the past, cloud computing replaced physical servers with cloud servers. However, customers still purchase cloud resources in the mode of core and G servers. In the future, cloud computing will be fully serverless and pay as the number of calls for computing.”
Serverless services are in line with the evolution trend of R&D models. Over the past ten years, we could see that various cloud vendors have made product systems serverless. Most of the new cloud services or new features are in a serverless state. A large number of open-source commercial products adopt the serverless model, including Confluent Cloud, MongoDB Atlas, Snowflake, and Databricks.
Jianfeng Zhang (President of Alibaba Cloud Intelligence) announced core cloud products are fully serverless during the Apsara Conference 2022.
Alibaba Cloud was the first cloud vendor in China to provide serverless computing services. Function Compute is a FaaS product, which is an event-driven and fully managed computing service. Users only need to write code and upload it. Function Compute (FC) automatically prepares computing resources, runs the code flexibly and reliably, and provides complete observability. This simplifies the development and O&M process.
Serverless App Engine (SAE) is the first application-oriented Serverless PaaS platform in the industry. It shields the complexity of underlying IaaS and Kubernetes and provides an application-managing solution with zero code transformation, lower cost, and higher efficiency. It helps users implement serverless monolithic Web applications, microservices applications, and scheduled tasks.
Alibaba Cloud Serverless Container Service (ASK), which is based on Elastic Container Instance (ECI), can scale out 2000 pods in one minute, which lowers the threshold for Kubernetes usage and allows users to focus on applications rather than managing the underlying infrastructure.
In addition, in 2020, Alibaba Cloud's open-source Serverless Devs became the industry's first cloud-native lifecycle management platform that supports mainstream serverless services/frameworks. In September 2022, it officially entered CNCF Sandbox, becoming the first serverless tool project in the industry.
Each serverless service is the output of vendors' capabilities, which promises reliability, elasticity, performance, and other capability indicators. Therefore, they are high-quality building blocks of applications. For example, the Alibaba Cloud Object Storage Service (OSS) carries large amounts of EB-level data and promises 99% of data reliability, 99.95% of availability, and diversified data storage and processing capabilities. AlibabaMQ for Apache RocketMQ, which is tempered by the trillion message peaks of Double 11, promises 90% data reliability and 99.95% availability.
These cloud services have clear advantages in elasticity and reliability compared with systems built by customers based on open-source software. As vendors launch more serverless services in storage, computing, middleware, big data, etc., and these services are tightly integrated through event-driven, etc., the cloud has gradually become a super platform for application construction and operation. The R&D model of the application has been upgraded to assembled R&D.
The following figure shows the comparison between traditional R&D and assembled R&D:
|Traditional R&D||Assembled R&D|
|Development of Business Code and Non-Functional Code||It implements business logic through Serverless computing and combines other cloud services to implement applications.|
|It designs and implements application components by itself, which are usually fragmented and difficult to combine and reuse.||Cloud service providers abstract domain capability into a composable and reusable cloud service and ensure service quality.|
|It manages application infrastructure with high complexity and low efficiency.||Without the need to manage infrastructure (such as servers), it is highly elastic and can quickly create/destroy application environments and release applications without damage.|
|In architecture design and implementation, complexity is high, and workload is heavy, but the design and implementation are fully under control.||The standard components (cloud services) provided by cloud service providers are used to build applications. The workload is low, but adaptation to cloud service functions is necessary.|
|Feature Delivery Cycle Months||Feature Delivery Cycle Hours|
From emerging Internet startups to traditional enterprises building large-scale software, serverless architecture and assembled R&D can be used.
Based on the serverless architecture, a nine-people start-up created Wolai, a new form of document application oriented for team collaboration. The entire application uses cloud services (such as Function Compute (FC), Object Storage (OSS), Tablestore, and Redis). The system consists of multiple loosely coupled functions. Only the relevant functions need to be updated for each feature release or bug fix. The feature release rhythm is shortened to several hours, realizing the selection to launch in a short time. The annual savings in O&M costs are 0.7-0.8 million, and the cost is reduced by 50%.
Pumpkin Film received one million new users within one hour. The sudden surging traffic resulted in the break of web services. Temporary cloud expansion was still unable to meet the huge traffic timely. After learning a lesson from this experience, we began to move toward serverless. It took seven days to upgrade, and we made a qualitative leap. In the end, the development efficiency improved by 70%, the cost reduced by 40%, and the O&M efficiency improved ten times over. The sudden traffic was handled gracefully.
Century Mart was the first new retail representative to try Serverless. It found that its old architecture could not handle the problem of traffic explosion during big promotions. Then, it tried to deal with data from member systems, transaction systems, payment systems, and others on Alibaba Cloud Function Compute (FC). After that, it no longer needs to rely on expanding machines to support large-scale businesses. The preparation time for big sales was shortened from weeks to hours. The efficiency of R&D and O&M improved by 30%, and the cost reduced by 40%, turning big sales into a norm.
The cloud catalyzes changes in R&D models. Serverless architecture and assembled R&D allow customers to do less and gain more, which are bound to become the mainstream R&D paradigm on the cloud.
Alibaba Cloud's Jianfeng Zhang: Core Cloud Products Are Fully Serverless
An Analysis of the Basic Concept of "Message-Driven, Event-Driven, and Streaming"
376 posts | 41 followersFollow
Alibaba Cloud Community - November 25, 2022
Alibaba Cloud Native Community - December 6, 2022
Alibaba Cloud Native Community - March 14, 2022
Alibaba Developer - January 21, 2021
Alibaba Clouder - May 18, 2021
Alibaba Cloud Community - January 11, 2023
376 posts | 41 followersFollow
Alibaba 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 More
High Performance Computing (HPC) and AI technology helps scientific research institutions to perform viral gene sequencing, conduct new drug research and development, and shorten the research and development cycle.Learn More
Deploy custom Alibaba Cloud solutions for business-critical scenarios with Quick Start templates.Learn More
Super Computing Service provides ultimate computing performance and parallel computing cluster services for high-performance computing through high-speed RDMA network and heterogeneous accelerators such as GPU.Learn More
More Posts by Alibaba Cloud Native Community