AutoNavi

Updated at:

Serverless is a core technical scenario for AutoNavi travel services. It steadily handles the travel traffic peaks of every holiday season. Businesses that run on the new-generation serverless architecture perform even better during traffic peaks, reaching millions of function invocations per minute and millions of QPS. This proves the value of core serverless technologies and further expands their application scenarios.

Customer profile

AMAP is a provider of digital maps and navigation services. Its business covers navigation services, the travel ecosystem, in-vehicle connectivity, and daily life services. As of 2024, AMAP has more than 800 million monthly active users, which places it in the top tier of map applications in China.

Self-guided travel is the core business of AMAP. It covers the travel-related feature requirements of users and carries the largest volume of user traffic in the AMAP app. Within this core business, AMAP applies Node FaaS to scenarios such as the main map scene page, the route planning page, and the navigation completion page.

Customer requirements

As its features expand, AMAP has upgraded from a navigation tool to a travel service platform and an entry point for daily life information. It further extends travel-related information service scenarios and delivers a more comprehensive user experience. For example, the scenario recommendation card recommends information based on your travel intent to improve your travel experience. This feature requires fast business iteration and flexible style adjustment. Therefore, storing card style templates in the cloud and rendering them to the client through service delivery is the optimal choice, and it meets the goal of fast and flexible iteration.

image

Solution

After evaluation, AutoNavi categorized this scenario as a stateless service. Based on the mature serverless ecosystem of Alibaba Cloud, AutoNavi integrated the Node FaaS capabilities of Alibaba Cloud Function Compute, and its travel frontend team built the scenario recommendation card service. The FaaS layer implements card UI template acquisition, data request aggregation and logic processing, and schema generation. The client renders and displays content directly based on the schema that the service delivers, which makes the solution more lightweight and flexible. During the peak hours of past National Day travel festivals, the overall serverless service success rate exceeded 99.99%, QPS reached millions, and the average response time of each scenario stayed below 60 ms. Service stability exceeded expectations.

Effects

Serverless performs extremely well in supporting the preceding business scenarios. Compared with traditional applications, serverless delivers the following differentiated value:

  • Simpleness and high efficiency

    For traditional applications at the Backend for Frontend (BFF) layer, as time goes by and business demands increase, the BFF layer gradually becomes thick. The piled-up code also becomes redundant. The module developer changes with personnel changes. After the iterative changes, the BFF layer will gradually become a module that no one knows and dares to move.

    Assume that the BFF layer is converted to the Serverless for Frontend (SFF) layer. In this case, the responsibilities of the SFF layer becomes simpler, requiring no O&M and lower costs. These capabilities are native to serverless, and they help frontend teams further unlock their productivity. Developers no longer need the thick BFF layer, but need only an interface or the SFF layer to implement features. This resolves the issue where a minor change causes major impact. If the service is stopped or no traffic occurs, the serverless architecture automatically scales in the number of instances to zero. In this case, developers can identify the function of a specific interface, and then delete the function of the interface to improve resource utilization.

    AutoNavi is highly advanced in serverless adoption and has fully integrated the FaaS layer with its R&D system. As a result, the time required to take an application through the full lifecycle of development, testing, canary release, and launch, and to obtain standardized capabilities such as throttling, elasticity, and disaster recovery, drops from days to hours. This greatly improves development efficiency.

    image
  • High elasticity and cost efficiency

    By analyzing the collected traffic trend data, AutoNavi notices that the difference between the peak traffic and the low peak traffic is obvious in the map scenario. Traditionally, AutoNavi needed to reserve a large number of computing resources to handle traffic surges during peak hours. However, redundant servers incur additional costs during off-peak hours.

    To solve this problem, AutoNavi uses Alibaba Cloud Function Compute, which automatically scales resources based on traffic changes. Increasing scaling speed is complex and has long been exclusive to large enterprises. However, Function Compute starts within milliseconds and brings rapid scale-out and scale-in to all users. This helps you flexibly use compute resources and reduces costs to 38% of the original costs.

    gaode2gaode3

  • Observability

    Observability is a required attribute of a platform that diagnoses applications after release. It lets you observe response time changes, resource utilization, and full-link invocation of system applications, so you can quickly identify application bottlenecks. Alibaba Cloud Function Compute is the first to seamlessly integrate with Log Service, CloudMonitor, Tracing Analysis, and Function Flow orchestration. You complete the configuration only once and then use all of these features. This greatly reduces your learning costs and enables fast application diagnosis.

    The Tracing Analysis page displays monitoring data such as the Span count trend, Latency trend, and Latency distribution, which helps you quickly locate performance bottlenecks in an invocation trace. For example, on the Tracing Analysis page of Function Compute, you can view the trace summary, including the trace start time, total latency, number of applications, trace depth, and total number of spans, and you can view details in the span list. Each span shows its name, such as InvokeFunction or Invocation, latency, application name, start time, IP address, and execution status. This helps you quickly locate invocation bottlenecks.

    Large-scale serverless adoption has begun, and more scenarios are being unlocked across industries. For business teams, the large-scale adoption of serverless at AutoNavi makes business iteration faster and more flexible, which creates the conditions for business innovation. For frontend developers, it further activates their productivity and greatly strengthens their confidence in their capabilities.