Online travel agency: SAE helps Baifu Travel quickly migrate microservices applications to the cloud

Updated at: 2025-02-28 06:34

Serverless App Engine (SAE) allows you to quickly migrate applications to the cloud. You can configure flexible application start and stop settings in SAE to reduce resource and O&M costs without the need to modify code or business logic. This topic describes how SAE helps Baifu Travel migrate applications to the cloud.

Background information

Baifu Travel is an online travel agency that provides multiple travel-related trading modules, such as flight booking, train ticket booking, hotel booking, cruise booking, bus ticket booking, tour booking, and online marketplace.

Due to the rapid development of business, the technology team of Baifu Travel built a complete microservices architecture based on open source frameworks such as Spring Cloud. The team used cloud computing services to improve work efficiency and reduce work costs. However, frequent system iterations have brought multiple challenges to the original microservices architecture used by Baifu Travel, such as complex O&M and low resource utilization.

Challenges

The following table describes the challenges faced by Baifu Travel. The table also describes the benefits of SAE.

Challenge

Benefit

Challenge

Benefit

O&M operations on the microservices architecture are complex.

  • SAE supports microservices frameworks, such as Spring Cloud and Dubbo, and provides maintenance-free microservices capabilities. This helps Baifu Travel reduce manpower costs.

  • SAE allows you to deploy applications by using WAR packages, JAR packages, and images without the need to learn Kubernetes and container technologies.

  • SAE provides multiple features and capabilities, including application release, application lifecycle management, service governance, auto scaling, one-click application start and stop, and application monitoring. SAE provides a console to facilitate the management of the lifecycles of applications and help reduce risks during application updates.

The utilization of test environments is low.

SAE provides namespaces to isolate development environments from test environments.

The ratio of idle resources is high.

You are charged for the SAE resources that you use. SAE provides a 0.5-core CPU and 1-GB memory instance type that can significantly improve resource utilization.

Solution

The following figure shows the solution that is used by Baifu Travel.百富旅行客户案例

The solution includes the following operations:

  1. Isolate environments.

    Baifu Travel can use the namespaces that are provided by SAE to isolate development and test developments. For more information, see Create a namespace.

  2. Prepare networks.

    Baifu Travel is an online travel app that has high network requirements. Virtual private clouds (VPCs) must be created before Baifu Travel can deploy applications. For more information, see Create a VPC.

  3. Deploy applications to the cloud.

    SAE provides a built-in service registry and supports multiple deployment methods to help Baifu Travel quickly perform cloud migration. Applications can be deployed by using WAR packages, JAR packages, or images. For more information, see Application hosting overview.

  4. Access applications.

    After Baifu Travel deploys applications to SAE, Baifu Travel must configure Server Load Balancer (SLB) instances to enable Internet access for the applications. For more information, see Bind an SLB instance to an application and Configure a NAT gateway for an SAE application to enable Internet access.

  5. Manage applications.

    SAE provides multiple features that help Baifu Travel manage applications, such as application lifecycle management, application instance viewing, gateway routing, one-click start and stop, and auto scaling. For more information, see Application hosting overview.

  6. Monitor applications.

    • The basic monitoring feature can be used to monitor metrics such as CPU, memory, load, network rate, network data transfer plan, and disk. For more information, see Basic monitoring.

    • The Application Overview page displays the metrics of an application such as total requests, average response time, and health status. For more information, see Application overview.

    • The Java Virtual Machine (JVM) monitoring feature can be used to monitor key JVM metrics, including the metrics that are related to the heap memory, non-heap memory, direct buffer, memory-mapped buffer, garbage collections (GCs), and JVM threads. For more information, see JVM monitoring.

    • The API monitoring feature can be used to monitor the details of the API calls of an application. API operations can be called to perform SQL analysis, NoSQL analysis, exception analysis, and error analysis. API operations can also be called to transmit upstream and downstream data and query traces. For more information, see API monitoring.

Effect

After Baifu Travel deploys applications to SAE, Baifu Travel can apply for resource quotas based on business requirements and is charged for the actual resource usage by the minute. This helps Baifu Travel reduce the costs during off-peak hours and perform complete auto scaling for microservices applications.

SAE provides the application lifecycle management capability that allows the technology team of Baifu Travel to release versions without the need to write scripts. SAE provides a console that allows Baifu Travel to manage applications in a visual manner. For example, Baifu Travel can use the SAE console to deploy, start, stop, scale in, and scale out applications and bind SLB instances to applications. SAE provides the version management capability and multiple canary release mechanisms to help Baifu Travel reduce risks during version updates. Baifu Travel can test a new version in a small-scale production environment. If the new version cannot meet specific business requirements, Baifu Travel can roll back the related application with a few clicks. SAE also provides the system monitoring capability to help Baifu Travel monitor the system status in real time based on multiple dimensions, such as resources, JVM, and application traces.

After Baifu Travel used SAE to perform serverless evolution, Baifu Travel reduced a large amount of resource costs and reduced more than half of O&M workloads. SAE helps Baifu Travel ensure sustainable business development.

  • On this page (1, T)
  • Background information
  • Challenges
  • Solution
  • Effect
Feedback