管理函数
函数计算的资源调度与运行以函数为单位。不同函数彼此相互独立,互不影响。本文介绍函数的属性和运行环境,以及如何通过函数计算控制台创建函数、更新函数、获取函数ARN等。
创建函数
登录函数计算控制台,在左侧导航栏,单击函数。
在顶部菜单栏,选择地域,然后在函数页面,单击创建函数。
在创建函数页面,按需选择创建函数的方式,配置以下配置项,然后单击创建。
说明本文以事件函数和Web函数为例进行说明。如果函数计算提供的环境无法满足您的业务需求,您可以选择容器镜像方式部署函数。具体操作,请参见创建Custom Container函数。
基本设置:设置函数名称。
函数代码:配置函数的运行环境和代码相关信息。
配置项
说明
示例
运行环境
选择您熟悉的语言,例如Python、Java、PHP或Node.js等。函数计算支持的运行环境,请参见函数计算支持的函数运行环境列表。
Node.js 14
代码上传方式
选择代码上传到函数计算的方式。
使用示例代码:默认方式,您可以根据业务需要选择函数计算为您提供的创建函数的示例代码。
通过 ZIP 包上传代码:选择函数代码ZIP包并上传。
通过文件夹上传代码:选择包含函数代码的文件夹并上传。
通过 OSS 上传代码:选择上传函数代码的Bucket 名称和文件名称。
使用示例代码
启动命令
说明当您创建函数的方式选择Web函数或容器镜像时,需设置此配置项。
程序的启动命令。如果不配置启动命令,您需要在代码的根目录手动创建一个名称为bootstrap的启动脚本,您的程序通过此脚本来启动。
npm run start
监听端口
说明当您创建函数的方式选择Web函数或容器镜像时,需设置此配置项。
您的代码中的HTTP Server所监听的端口。
9000
高级配置:配置函数的实例相关信息和函数执行超时时间等。
配置项
说明
示例
规格方案
根据您的业务情况,选择或手动输入合理的vCPU规格和内存规格组合。关于各资源使用的计费详情,请参见计费概述。
说明vCPU大小(单位为核)与内存大小(单位为GB)的比例必须设置在1∶1到1∶4之间。
存量迁移场景下,函数计算支持按照2∶3的比例抵扣vCPU和内存,即1 GB-秒=0.66 vCPU*秒+1 GB*秒。2022年11月03日之后,函数计算支持根据业务需求灵活配比。但vCPU的值必须以0.05核为阶梯递增,原折算比例中0.66 vCPU*秒的取值将不再适用,您可以选择0.60 vCPU*秒或0.65 vCPU*秒等。
0.35核,512 MB
临时硬盘大小
根据您的业务情况,选择临时存储文件的硬盘大小。
取值说明如下。
512 MB:默认值。不计费,函数计算为您提供512 MB以内的硬盘免费使用额度。
10 GB:按9.5 GB进行计费。
说明临时硬盘中所有目录可写,共享临时硬盘的空间。
临时硬盘大小与底层执行函数的实例生命周期一致,实例被系统回收后,硬盘上的数据也会消失。如您需要对文件进行持久化保存,可以选择挂载NAS或OSS。具体操作,请参见配置NAS文件系统和配置OSS文件系统。
512 MB
执行超时时间
设置超时时间。执行超时时间默认为60秒,最长为86400秒。
说明超过设置的超时时间,函数将以执行失败结束。如需更长的超时时间限制,请加入钉钉用户群(钉钉群号11721331)申请。
60
请求处理程序
设置请求处理程序,函数计算的运行时会加载并调用您的请求处理程序处理请求。创建函数的方式选择Web函数和容器镜像时,无需设置此配置项。
说明代码上传方式选择使用示例代码时,不需要修改请求处理程序。当选择其他代码上传方式时,则需要根据实际情况修改请求处理程序,否则函数执行时会报错。
index.handler
时区
选择函数的时区。此处设置函数的时区后,将自动为函数添加一条环境变量TZ,其值为您设置的目标时区。
UTC
函数角色
函数计算平台会使用这个RAM角色来生成访问您的阿里云资源的临时密钥,并传递给您的代码。更多信息,请参见授予函数计算访问其他云服务的权限。
AliyunFCDefaultRole
允许访问 VPC
是否允许函数访问VPC内资源。更多信息,请参见配置网络。
是
专有网络
允许访问 VPC选择是时必填。创建新的VPC或在下拉列表中选择要访问的VPC ID。
fc.auto.create.vpc.1632317****
交换机
允许访问 VPC选择是时必填。创建新的交换机或在下拉列表中选择交换机ID。
fc.auto.create.vswitch.vpc-bp1p8248****
安全组
允许访问 VPC选择是时必填。创建新的安全组或在下拉列表中选择安全组。
fc.auto.create.SecurityGroup.vsw-bp15ftbbbbd****
允许函数默认网卡访问公网
是否允许函数可以通过默认网卡访问公网。关闭后,当前服务中的函数将无法通过函数计算的默认网卡访问公网。
重要使用固定公网IP地址功能时,您必须关闭允许函数默认网卡访问公网,否则配置的固定公网IP地址不生效。更多信息,请参见配置固定公网IP地址。
是
环境变量:设置函数运行环境中的环境变量。更多信息,请参见环境变量。
更新函数
登录函数计算控制台,在左侧导航栏,单击函数。
在顶部菜单栏,选择地域,然后在函数页面,单击目标函数。
在函数配置页面,选择配置页签,按需修改相应的配置项,单击确定。
配置项
说明
参考文档
基础配置
配置函数的基础信息。目前支持修改函数描述、规格方案、临时硬盘大小。
触发器
根据需求创建触发器或修改触发器。
运行时
修改函数运行时。目前支持修改运行环境、请求处理程序和执行超时时间。
环境变量
配置函数运行环境中的环境变量。
层
选择已创建的层名称和版本。层可以为您提供自定义的公共依赖库、运行时环境及函数扩展等发布与部署能力。
权限
您可以修改函数角色和权限策略。
日志
配置是否启用日志功能。
网络
配置函数相关的网络信息。
存储
配置是否使用NAS 文件系统及OSS 对象存储。
弹性策略
配置按量实例或预留实例的弹性策略。
异步配置
配置异步调用的重试策略及目标服务。
实例生命周期回调
配置函数实例的生命周期回调,包括Initializer 回调程序和PreStop 回调程序。
DNS 配置
配置自定义DNS,平台根据该配置生成resolv.conf。
您也可以根据提示删除不需要的函数。
获取函数ARN
资源ARN(Aliyun Resource Name)用于在代码中定位阿里云资源。您可以获取函数的ARN,便于引用函数。
登录函数计算控制台,在左侧导航栏,单击函数。
在顶部菜单栏,选择地域,然后在函数页面,单击目标函数。
在函数详情页面,选择配置页签,在基础配置区域,查看并复制函数的ARN。
函数计算支持的函数运行环境列表
运行环境 | 说明 | 文档链接 |
Node.js 6 | Node.js 6版本 | |
Node.js 8 | Node.js 8版本 | |
Node.js 10 | Node.js 10版本 | |
Node.js 12 | Node.js 12版本 | |
Node.js 14 | Node.js 14版本 | |
Node.js 16 | Node.js 16版本 | |
Python 2.7 | Python 2.7版本 | |
Python 3 | Python 3.6版本 | |
Python 3.9 | Python 3.9版本 | |
Python 3.10 | Python 3.10版本 | |
PHP 7.2 | PHP 7.2.7版本 | |
Java 11 | Java 11版本 | |
Java 8 | Java 8版本 | |
.NET Core 2.1 | .NET Core 2.1版本 | |
.NET Core 3.1 | .NET Core 3.1版本 | |
Go 1.x | Go 1.8或以上版本 | |
Custom Runtime | 自定义运行时(Debian 9) | |
Custom Runtime(Debian 10) | 自定义运行时(Debian 10) |