Introduction to SAE break the boundaries of Serverless implementation, make application containerization faster, make K8s implementation easier, and combine container + Serverless + PaaS into one, making Technology advancement, resource utilization optimization, and constant development, operation and maintenance experience can be integrated.
Author|Dai Xin & Wang Chen
In the microservice scenario, is open source self-construction the fastest, the most economical and the most stable? Will complexity really become the "fatal wound" of Kubernetes? Does enterprise application containerization have to pass the "single-plank bridge" of Kubernetes? Serverless has a single application scenario and is mostly used in non-core scenarios with simple logic: applets, ETL, scheduled backups, etc. Java microservices are really nowhere in sight?
At the 2021 Yunqi Conference, Alibaba researcher and general manager of Alibaba Cloud Intelligent Cloud Native Application Platform Ding Yu (shu Tong) released a new product positioning and five new product features of the Serverless application engine SAE, giving the above questions Answer.
From dedicated to general purpose,
SAE is naturally suitable for large-scale implementation of enterprise core business
Different from Serverless in the form of FaaS, SAE is "application-centric" and provides application-oriented UI and API, without changing application programming models and deployment methods, maintaining a consistent development and deployment experience for customers on traditional servers, and also convenient Local development and debugging/monitoring greatly reduces the threshold for customers to use Serverless, and can achieve zero transformation and smooth migration of enterprise online applications.
It is precisely because of this that SAE helps Serverless to go from dedicated to universal, breaking the implementation boundary of Serverless, making Serverless no longer a front-end full-stack, small program special pet, back-end microservices, SaaS services, Internet of Things applications, etc. are also available Built on Serverless, it is naturally suitable for the large-scale implementation of the core business of the enterprise.
From complex to simple,
SAE is naturally suitable for enterprise zero-threshold containerization
Different from open source and self-built microservices, SAE provides a complete set of microservice governance capabilities that have been tested on Double 11 out of the box. Customers do not need to consider framework selection, let alone data isolation, distributed transactions, fuse design, current limit degradation, etc. , And there is no need to worry about the limited maintenance of the community and the problem of secondary custom development. Can achieve seamless migration of Spring Cloud/Dubbo zero transformation. On top of open source, we have also enhanced advanced features such as lossless online and offline, service authentication, and full-link grayscale.
SAE also helped users to shield the technical details of K8s, realize zero-threshold containerization of enterprise applications, and embrace K8s without feeling. Provides the ability to automatically build images. In addition to images, WAR/JAR/PHP zip packages and other methods are provided to reduce the threshold for customers to make Docker images. Shield K8s's complex network and storage plug-in adaptations, assign an IP that is interconnected in the VPC for each application instance, and persist data to the storage system. Shield the operation and maintenance upgrade of K8s, and no longer have to worry about the stability risk brought by the K8s version upgrade. K8s is shielded from docking monitoring components and flexible controllers, providing white-screen end-to-end observability and flexible and diverse flexible strategy configuration. Users continue to use the original packaging deployment method and directly enjoy the technical bonus of K8s.
5 new features, highlighting the new advantages of Severless,
Extend the new boundary of Serverless
- Elasticity 2.0: industry's first hybrid elastic strategy, supporting the mixed use of timing and index strategies. In terms of open source K8s capabilities, the number of TCP connections is enriched, business indicators such as SLB QPS/RT trigger flexibility, and advanced flexible settings such as expansion and contraction step size and cooling time are supported.
- Java cold start speed up by 40%: based on the enhanced AppCDS startup acceleration technology of Alibaba Dragonwell 11. Compared with the standard OpenJDK, the cold start takes 40% faster.
- ultimate deployment efficiency 15s: based on the underlying full link upgrade, security sandbox container 2.0, image acceleration, etc., providing an end-to-end 15-second ultimate deployment experience.
- one-stop PHP application hosting: supports PHP zip package to directly deploy SAE, and provides PHP runtime environment selection and application monitoring capabilities, providing a one-stop PHP application hosting experience.
- richer developer tool chain: except Cloudtoolkit, CLI, VSCode and other developer tools, added support for Terraform and Serverless Devs, based on resource scheduling capabilities, one-click deployment of applications and the dependence of SAE cloud resources to build a better environment simple.
4 best practices,
Achieve a model of All on Serverless
- low-threshold
It is faster, more economical and more stable than open source self-built microservices. With the rapid growth of business, many companies are facing the difficulty of transforming from a single unit to a microservice architecture; or self-built microservices cannot meet the stability and diversified needs of enterprises. With SAE's out-of-the-box full set of microservice capabilities, it reduces customer learning and R&D costs, and has the stability endorsement that has passed the test of Double 11, allowing these companies to quickly complete the microservice architecture transformation and support the rapid launch of new businesses. This is also the most widely used scenario for SAE. It can be said that SAE is the best serverless practice in the microservices field.
- One-key start-stop development test environment
There are many environments in medium and large enterprises, and the development, testing, and pre-release environments are often not used 7*24 hours. Long-term application examples are maintained, and idle waste is high. Some enterprises' CPU utilization rates are approaching zero, and the demand for cost reduction is obvious. SAE's one-key start-stop capability has allowed these companies to flexibly release resources on demand. The development and test environment alone can save 2/3 of the machine cost, which is very impressive. Next, we will use K8s orchestration capabilities to orchestrate application and resource dependencies, and initialize a set of environments and clone replication environments with one click.
- Full link grayscale
It is stronger than the gray-scale capability provided by the open source K8s ingress. SAE combines the scene characteristics of the PaaS layer customer, not only realizes the seven-layer traffic gray scale of K8s ingress, but also realizes the full link gray scale from the front-end traffic to the interface and method levels of multiple cascaded microservices. Compared with the original solution, it is more convenient to deploy, operate and maintain. In the past, customers needed to deploy multiple applications in two namespaces and use two complete environments to achieve formal and gray-scale releases, which resulted in high hardware costs and troublesome deployment and maintenance. Based on SAE, customers only need to deploy a set of environments, by configuring some gray-scale rules to access the specified special traffic to a special instance, and cascading down one by one, which not only controls the explosion radius, but also saves hardware costs while being convenient.
- Use SAE as a flexible resource pool to optimize resource utilization
Most customers will use SAE in full, and a small number of customers will put the normal part of the same business on the ECS, using SAE as a flexible resource pool, and the two will be deployed in a mixed manner. It is only necessary to ensure that the ECS instance and SAE instance of the same application are mounted to the back end of the same SLB, and the weight ratio is set. Microservice applications also need to be registered in the same registry. In addition, the customer self-built publishing system is reused to ensure that the SAE instance and ECS instance versions are the same every time the version is released. Reuse the customer's self-built monitoring system, send SAE monitoring data to the monitoring system through OpenAPI, and organize the monitoring data of ECS. When the traffic peak comes, the elastic module will bounce all elastic instances to the SAE system, which greatly improves the efficiency of elastic expansion and reduces costs. This set of mixed solutions is also suitable for migrating from ECS mode to SAE, as an intermediate transition plan to further improve the stability of the migration process.
SAE’s 5 new features and 4 best practices break the boundaries of Serverless implementation, make application containerization faster, make K8s implementation easier, and allow containers + Serverless + PaaS to be combined into one, making technology advanced, Resource utilization optimization and constant development, operation and maintenance experience can be integrated.
Copyright Statement: content of this article is contributed spontaneously by Alibaba Cloud real-name registered users. The copyright belongs to the original author. The Alibaba Cloud Developer Community does not own its copyright and does not assume corresponding legal responsibilities. For specific rules, please refer to the "Alibaba Cloud Developer Community User Service Agreement" and the "Alibaba Cloud Developer Community Intellectual Property Protection Guidelines". If you find suspected plagiarism in this community, fill in the infringement complaint form to report it. Once verified, the community will immediately delete the suspected infringing content.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。