为满足不同场景下的用户需求,函数计算提供内置运行时、自定义运行时和自定义容器运行时。本文介绍函数计算支持的函数运行时的适用场景及差异,供您进行技术选型。
选型分析
|
对比项 |
内置运行时 |
自定义运行时 |
自定义容器运行时 |
|
适用场景 |
按照函数计算定义的接口编写程序处理事件和HTTP请求。 |
基于各个语言的流行框架(Java SpringBoot、Node.js Express、Python Flask、Golang Gin等)编写程序,或者迁移已有的框架应用。 |
|
|
冷启动 |
最快。代码包中不包含运行时,所以冷启动最快。 |
较快。自定义运行时使用公共镜像,没有镜像拉取时间,所以冷启动会较快。 |
较慢。需要拉取镜像,所以冷启动较慢。 |
|
代码包限制 |
500 MB未解压代码包 |
500 MB未解压代码包 |
10 GB未解压镜像 |
|
代码包格式 |
ZIP、JAR(Java)、文件夹 |
ZIP、JAR(Java)、文件夹 |
|
|
是否支持GPU实例 |
不支持 |
不支持 |
支持 |
|
运行时环境 |
Node.js、Python、PHP、Java、.NET Core 、Go |
无限制 |
无限制 |
函数运行时介绍
内置运行时
如果您想按照函数计算定义的接口编写程序处理事件和HTTP请求,请选择内置运行时。具体操作,请参见创建函数。
创建函数页面提供三种创建方式:使用内置运行时创建、使用自定义运行时创建和使用容器镜像创建。
自定义运行时
如果您想基于各个语言的流行框架(Java SpringBoot、Node.js Express、Python Flask、Golang Gin等)编写程序,或者迁移已有的框架应用,请选择自定义运行时。具体操作,请参见创建函数。
在运行环境下拉框中,可选的自定义运行时包括 .NET 6.0、TypeScript、Rust、Ruby、Dart、Deno。
自定义容器运行时
阿里云容器镜像服务ACR(Alibaba Cloud Container Registry)是面向容器镜像、Helm Chart等符合OCI标准的云原生制品安全托管及高效分发平台。使用容器镜像部署函数功能,您无需自建并维护镜像托管服务,即可享用云上安全高效的镜像托管和分发服务。具体操作,请参见创建Custom Container函数。
在创建函数页面,选择使用容器镜像创建,然后根据需要展开并配置基本设置、镜像配置、高级配置、环境变量和触发器配置,完成后单击创建。