Alibaba Cloud Function Compute is a fully-managed event-driven computing service. With Function Compute, you can focus on writing and uploading code, without the need to procure and manage infrastructure resources such as servers. Function Compute prepares computing resources for you, runs code in an elastic and reliable way, and provides features such as log query, performance monitoring, and alert.

With Function Compute, you can quickly create any type of applications and services and only pay for the resources actually consumed when you run your code.

Workflow

The following figure shows the workflow of Function Compute.work_flow
The corresponding steps are described as follows:
  1. The developer writes code to create an application and a service by using a programming language. For more information about the programming languages supported by Function Compute, see Programming languages.
  2. The developer uploads the application to Function Compute.
    The application can be uploaded in the following ways:
  3. The developer or an event triggers function execution. Functions can be triggered by Object Storage Service (OSS), API Gateway, Log Service, Tablestore, and Function Compute API and SDKs.
  4. Function Compute dynamically scales out to respond to the request. Function Compute can automatically scale out based on the number of user requests. This process is transparent to you and your customers.
  5. Alibaba Cloud billing center bills Function Compute based on the actual execution duration. After the function is executed, you can view the execution fees on the bill. The billing granularity is accurate to 1 ms. For more information, see Instance specifications and usage modes.

Integrated services

Function Compute integrates different services in an event-driven manner. Based on this, you can create elastic, reliable, and secure applications and services, and even complete a set of backend services for processing multimedia data within a few days. When an event source triggers an event, the associated function is automatically called to process the event. For example, when an OSS object creation event (ObjectCreated) or deletion event (ObjectRemoved) occurs, the associated function is automatically triggered to process the event. When API Gateway receives an HTTP request, it automatically triggers the associated function to process the request. In addition, functions can be triggered by other Alibaba Cloud services such as Log Service and Tablestore. For more information, see What is Log Service? and What is Tablestore?.

For more information about event source types supported by Function Compute, see Triggers.

Serverless architecture

If you plan to purchase a server to develop a social short video application, you need to consider many issues. The following lists some examples:

  • How do I create and maintain a set of stable and elastic backend video processing services?
  • How many servers do I need to purchase?
  • What specifications does a server use?
  • How do I configure the network and operating system?
  • How do I deploy an environment?
  • How do I implement load balancing?
  • How do I implement dynamical scaling?
  • How do I upgrade the configuration?
  • What can I do when a server fails?
  • How do I handle user request peaks?
  • How do I handle system monitoring alerts?

Fortunately, cloud-based infrastructure allows you to quickly schedule and use massive computing resources, without worrying about finding servers of appropriate specifications within a short period of time. However, the abstraction granularity of most existing cloud computing resources are at the instance level. As a result, it is still difficult and costly to manage and use these computing resources. Alibaba Cloud Function Compute is designed to reduce computing costs and improve computing efficiency. It increases the abstraction granularity of computing services to the function level, providing a serverless application design pattern.

Function Compute spares you from the management of the underlying infrastructure. You can run services by simply deploying your code to Function Compute and triggering function execution in an event-driven manner. You do not need to worry about issues such as environment deployment, server scale-out, and server breakdown. Function Compute provides an elastic scale-out mechanism and is billed on a pay-as-you-go basis. In addition, Function Compute provides features such as log query, performance monitoring, and alert to help you quickly locate and troubleshoot problems.

Benefits

  • Function Compute spares you from procurement and management of infrastructure such as servers, greatly reducing O&M costs.
  • Function Compute allows you to focus on developing business logic. You can design, optimize, test, review, and upload your application code by using the programming languages supported by Function Compute. For more information, see Programming languages.
  • Function Compute uses events to trigger an application to respond to user requests. Function Compute seamlessly connects to Alibaba Cloud services such as OSS, API Gateway, Log Service, and Tablestore, helping you quickly build applications. For example, you can store pictures and videos by using OSS and enable Function Compute to automatically trigger a function to process new data that is written into your OSS resources. For more information about the related services, see What is OSS?, What is API Gateway, What is Log Service?, and What is Tablestore?.
  • Function Compute provides features such as log query, performance monitoring, and alert to help you quickly troubleshoot problems.
  • Function Compute provides millisecond-level auto scaling, allowing you to quickly scale out the underlying system to cope with traffic peaks.
  • Function Compute is billed on a pay-as-you-go basis. The billing granularity is accurate to 1 millisecond. You only need to pay for the computing resources that are actually consumed. This is particularly applicable to user access scenarios with high traffic fluctuation. For more information, see Instance specifications and usage modes.

Learning path

To quickly learn more about Function Compute and get started with the use and maintenance of Function Compute, see Function Compute Learning Path.