Serverless App Engine (SAE) allows you to deploy and host applications by using code packages or images without the need to maintain the underlying infrastructure. SAE helps you get started with containers with ease. You can focus on designing and building applications without the need to manage and maintain clusters and servers. SAE helps you manage the lifecycle of the applications and maximize resource utilization. SAE also provides monitoring and O&M capabilities. This topic describes the application hosting feature, and the application types and deployment methods that are supported by SAE.
Application deployment methods
The following table describes the mainstream applications and deployment methods that are supported by SAE.
Application | Deployment method | References |
Native Spring Cloud application | WAR, JAR, and image | |
Native Dubbo application | WAR, JAR, and image | |
HSF | WAR, JAR, and image | |
Applications in programming languages other than Java, PHP, and Python | Image | Deploy applications in other languages by using images in the SAE console |
PHP application | Image and ZIP | |
Python application | Image and ZIP |
Applications that are developed by using Spring Cloud, Dubbo, and High-Speed Service Framework (HSF) frameworks can be deployed to SAE. Application runtime environments vary based on the deployment method that you select.
If you deploy a Spring Cloud or Dubbo application by using a WAR package, select a runtime environment of an apache-tomcat version.
If you deploy a Spring Cloud or Dubbo application by using a JAR package, select Standard Java Application Runtime Environment.
If you deploy an HSF application by using a WAR or JAR package, select a runtime environment of an EDAS-Container version.
SAE allows you to host applications that are built by using multiple programming languages, such as Java, PHP, Python, Node.js, and Go.
SAE allows you to deploy applications in the SAE console and by calling API operations. SAE also allows you to use continuous integration and continuous deployment (CI/CD) tools, such as Jenkins and Terraform, and plug-ins, such as Maven, IntelliJ IDEA, and Eclipse, to automatically deploy applications after you submit code.
The first time you deploy an application to SAE, you must create an application in the SAE console to push business code to the application.
Advanced settings for application deployment
SAE provides multiple advanced settings, such as the startup command, environment variables, host binding, health check, log collection, and persistent storage. You can configure advanced settings when or after you create an application based on your business requirements. If you configure advanced settings after you create the application, the application is restarted to enable the settings. To prevent unpredictable errors such as business interruptions, we recommend that you configure advanced settings during off-peak hours.
Features of application hosting
After you host an application to SAE, you can manage the lifecycle of the application in the SAE console with a few clicks. This simplifies the O&M process.
Feature | Description |
Resource management | Namespaces are used to logically isolate applications and ConfigMaps are used to store application configurations. For more information, see Manage a namespace. |
Application deployment |
|
Application management | After you deploy an application to SAE, you can modify the instance type, security group, and vSwitch of the application based on your business requirements. For more information, see Manage applications. |
Application access | After you deploy an application to SAE, the application needs to complete specific business tasks by accessing resources over the Internet or across virtual private clouds (VPCs). In this case, you can bind Server Load Balancer (SLB) instances, configure a NAT gateway and an elastic IP address (EIP), or associate application instances with EIPs. For more information, see Application access. |
Application O&M | SAE provides the webshell feature to help you perform basic O&M tasks. For example, you can upload and download logs to perform routine checks on applications. If an instance fails to start, you can use the one-click debugging feature of SAE to identify and resolve the issue. For more information, see Application O&M. |
One-click start and stop | SAE allows you to start and stop multiple applications that are developed in the development, testing, or staging environment in a namespace at a time. For more information, see Use the one-click start and stop feature to manage applications. |
Scaling | You can change the number of application instances to adjust the compute capacity of an application based on the workloads of your application. If the workload of an application instance is higher than expected, you can use the manual scaling feature to add instances. If the application is idle, you can reduce the number of instances in the application to improve resource utilization and cost-effectiveness.
|
Log management | You can use logs to identify issues when you perform O&M tasks on applications. For more information, see Log management. |
Monitoring and alerting | SAE integrates with Application Real-Time Monitoring Service (ARMS) to help you monitor key performance metrics for your applications that are deployed on SAE. For more information, see Monitoring. |
Distributed configuration management | SAE allows you to manage application configurations in a centralized manner. You can extract a large number of parameters and variables that are generated during application development into configuration files and upload the files to SAE. For more information, see Configuration management overview. |