Function Compute supports multiple languages through the use of runtimes. When you create a function, you must select a runtime to upload and run your code. After you create the function, you can change or update the runtime by updating configurations of the function. This topic describes the runtimes supported by Function Compute and the runtime deprecation policy.
Background
Function Compute invokes a function in an execution environment. The execution environment provides a secure and isolated runtime environment that manages the resources required to run your function. If an execution environment from a previous invocation is available, Function Compute reuses the execution environment. Otherwise, Function Compute creates a new execution environment.
Each runtime of Function Compute is based on a specific Linux distribution. Debian 9 (Stretch) and Debian 10 (Buster) are supported. Runtimes can use a single version of a language, multiple versions of a language, or multiple languages. When a version of a language reaches the end of life, the runtimes for the version and language framework are deprecated.
Supported runtimes
Node.js
Version | Identifier | Operating system | Architecture |
Node.js 20.x (public preview) | nodejs20 | Linux (Debian 10) | x86_64 |
Node.js 18.x (public preview) | nodejs18 | Linux (Debian 10) | x86_64 |
Node.js 16.x | nodejs16 | Linux (Debian 9) | x86_64 |
Node.js 14.x | nodejs14 | Linux (Debian 9) | x86_64 |
Node.js 12.x | nodejs12 | Linux (Debian 9) | x86_64 |
Node.js 10.x | nodejs10 | Linux (Debian 9) | x86_64 |
Node.js 8.x | nodejs8 | Linux (Debian 9) | x86_64 |
Python
Version | Identifier | Operating system | Architecture |
Python 3.10 | python3.10 | Debian 10 | x86_64 |
Python 3.9 | python3.9 | Debian 9 | x86_64 |
Python 3.6 | python3 | Debian 9 | x86_64 |
PHP
Version | Operating system | Architecture |
PHP 7.2 | Linux | x86_64 |
Java
Version | Operating system | Architecture |
Java 11 | Linux | x86_64 |
Java 8 | Linux | x86_64 |
.NET
Version | Operating System |
.NET Core 3.1 | Debian 9 |
Go
Version | Operating system | Architecture |
Go 1.x | Linux | x86_64 |
Custom runtime
Runtime | Identifier | OS | Architecture |
Custom runtimes (Debian10) | custom.debian10 | Debian 10 | x86_64 |
Custom runtimes (Debian 9) | custom | Debian 9 | x86_64 |
Runtime deprecation policy
With the iteration of runtime versions, Function Compute stops maintaining specific runtimes and no longer provides technical support and security updates for these runtimes. The deprecation of a runtime is divided into two phases.
Phase 1
You can no longer create functions in the runtime, but you can still execute and update existing functions that use the runtime.
Phase 2
You can no longer create or update functions that use the runtime, but you can still execute the existing functions that use the runtime.
Function Compute does not block invocations of functions that use a deprecated runtime. The functions can still be invoked. We recommend that you migrate your functions to the latest supported runtimes for technical support and security updates.
The following table lists the deprecation plans for runtimes in Function Compute. For runtimes that are not listed in the table, no deprecation plans have been made yet. Function Compute notifies you by email or internal messages if you have functions that use a runtime that is to be deprecated in the next 60 days.
Runtime | Identifier | Phase 1 | Phase 2 |
Node.js 12 | nodejs12 | None | None |
Node.js 10 | nodejs10 | October 15, 2024 | December 15, 2024 |
Node.js 8 | nodejs8 | October 15, 2024 | December 15, 2024 |
.NET Core 2.1 | dotnetcore2.1 | June 1, 2023 | September 25, 2024 |
Python 2.7 | python2.7 | June 1, 2023 | September 25, 2024 |
Node.js 6 | nodejs6 | June 1, 2023 | September 25, 2024 |
Node.js 4.4 | nodejs4.4 | June 1, 2023 | September 25, 2024 |
More information
Custom runtimes of Function Compute support extensions to flexibly optimize and adjust functions to meet your business requirements. For more information, see Use Loggie in custom runtimes and ARMS extensions for custom runtimes.
The supported runtimes in Function Compute include built-in runtimes and custom runtimes. For more information, see Overview.