管理函数

更新时间: 2024-01-29 14:49:31

函数计算的资源调度与运行以函数为单位。一个服务下可以创建多个函数,这些函数彼此相互独立,互不影响,但这些函数可以共享一些相同的设置,例如服务授权和日志配置等。您可以通过函数计算控制台创建函数、更新函数及获取函数ARN等。

前提条件

已创建服务

创建函数

  1. 登录函数计算控制台,在左侧导航栏,单击服务及函数
  2. 在顶部菜单栏,选择地域,然后在服务列表页面,单击目标服务。
  3. 函数管理页面,单击创建函数
  4. 创建函数页面,按需选择创建函数的方式,配置以下配置项,然后单击创建

    说明

    本文以使用内置运行时创建使用自定义运行时创建方式为例进行说明。如果函数计算提供的环境无法满足您的业务需求,您可以使用容器镜像创建方式部署函数。具体操作,请参见创建Custom Container函数

    • 基本设置:配置函数的基本信息,包括函数名称请求处理程序类型请求处理程序类型包括以下两种。

      • 处理事件请求:通过定时器、调用API/SDK或其他阿里云服务的触发器来触发函数执行。

      • 处理 HTTP 请求:用于处理HTTP请求或WebSocket请求的函数。如果您的使用场景是Web场景,建议您使用自定义运行时创建

    • 函数代码:配置函数的运行环境和代码相关信息。

      配置项

      说明

      示例

      运行环境

      选择您熟悉的语言,例如Python、Java、PHP或Node.js等。函数计算支持的运行环境,请参见函数计算支持的函数运行环境列表

      Node.js14

      代码上传方式

      选择上传函数代码到函数计算的方式。

      • 使用示例代码:默认方式,您可以根据业务需要选择函数计算为您提供的创建函数的示例代码。

      • 通过 ZIP 包上传代码:选择函数代码ZIP包并上传。

      • 通过 JAR 包上传代码:选择函数代码JAR包并上传。

      • 通过文件夹上传代码:选择包含函数代码的文件夹并上传。

      • 通过 OSS 上传代码:选择上传函数代码的Bucket 名称文件名称

      说明
      • 代码上传方式选择使用示例代码时,不需要修改请求处理程序。当选择其他代码上传方式时,则需要根据实际情况修改请求处理程序,否则函数执行时会报错。

      • 运行环境选择为Java 8Java 11时,只支持使用示例代码通过 JAR 包上传代码通过 OSS 上传代码。其余运行环境支持使用示例代码通过 ZIP 包上传代码通过文件夹上传代码通过 OSS 上传代码

      使用示例代码

      启动命令

      说明

      仅当您选择使用自定义运行时创建函数时,需设置此配置项。

      程序的启动命令。如果不配置启动命令,您需要在代码的根目录手动创建一个名称为bootstrap的启动脚本,您的程序通过此脚本来启动。

      npm run start

      监听端口

      说明

      仅当您选择使用自定义运行时创建函数时,需设置此配置项。

      您的代码中的HTTP Server所监听的端口。

      9000

    • 高级配置:配置函数的实例相关信息和函数执行超时时间等。

      配置项

      说明

      示例

      规格方案

      根据您的业务情况,选择或手动输入合理的vCPU规格内存规格组合。关于各资源使用的计费详情,请参见计费概述

      说明

      vCPU大小(单位为核)与内存大小(单位为GB)的比例必须设置在1∶1到1∶4之间。

      0.35核,512 MB

      临时硬盘大小

      根据您的业务情况,选择临时存储文件的硬盘大小。

      取值说明如下。

      • 512 MB:默认值。不计费,函数计算为您提供512 MB以内的硬盘免费使用额度。

      • 10 GB:按9.5 GB进行计费。

      说明

      临时硬盘中所有目录可写,共享临时硬盘的空间。

      临时硬盘大小与底层执行函数的实例生命周期一致,实例被系统回收后,硬盘上的数据也会消失。如您需要对文件进行持久化保存,可以选择挂载NAS或OSS。具体操作,请参见配置NAS文件系统配置OSS文件系统

      512 MB

      实例并发度

      设置函数实例的并发度。具体信息,请参见设置实例并发度

      10

      执行超时时间

      设置超时时间。执行超时时间默认为60秒,最长为86400秒。

      说明

      超过设置的超时时间,函数将以执行失败结束。如需更长的超时时间限制,请加入钉钉用户群(钉钉群号11721331)申请。

      60

      请求处理程序

      设置请求处理程序,函数计算的运行时会加载并调用您的请求处理程序处理请求。选择使用自定义运行时创建使用容器镜像创建函数时,无需设置此配置项。

      说明

      代码上传方式选择使用示例代码时,不需要修改请求处理程序。当选择其他代码上传方式时,则需要根据实际情况修改请求处理程序,否则函数执行时会报错。

      index.handler

      时区

      选择函数的时区。此处设置函数的时区后,将自动为函数添加一条环境变量TZ,其值为您设置的目标时区。

      UTC

    • 环境变量:设置函数运行环境中的环境变量。更多信息,请参见环境变量

    • 触发器配置:设置函数的触发器,您可以使用触发器触发函数执行。更多信息,请参见触发器管理

更新函数

  1. 登录函数计算控制台,在左侧导航栏,单击服务及函数
  2. 在顶部菜单栏,选择地域,然后在服务列表页面,单击目标服务。
  3. 函数管理页面,单击目标函数操作列的配置
  4. 在编辑函数配置页面,按需修改相应的配置项,单击保存

    • 基础信息

      配置函数的基础信息。目前仅支持修改函数描述规格方案硬盘大小实例并发度

    • 环境信息

      配置函数的运行环境和其他关键配置项。更多信息,请参见创建函数

    • 其他配置

      配置项

      说明

      参考文档

      环境变量

      配置函数运行环境中的环境变量。

      环境变量

      实例生命周期回调

      配置函数实例的生命周期回调,包括初始化函数PreFreeze 函数PreStop 函数

      函数实例生命周期

      选择已创建的层名称和版本。层可以为您提供自定义的公共依赖库、运行时环境及函数扩展等发布与部署能力。

      创建自定义层

      DNS 配置

      配置自定义DNS,平台根据该配置生成resolv.conf

      在函数中配置自定义DNS

说明

您也可以根据提示删除不需要的函数。

获取函数ARN

资源ARN(Aliyun Resource Name)用于在代码中定位阿里云资源。您可以获取函数的ARN,便于引用函数。

  1. 登录函数计算控制台,在左侧导航栏,单击服务及函数
  2. 在顶部菜单栏,选择地域,然后在服务列表页面,单击目标服务。
  3. 函数管理页面,单击需获取ARN的函数名称。

  4. 在函数详情页面,选择函数配置页签,在基础信息区域,查看并复制函数的ARN。

函数计算支持的函数运行环境列表

运行环境

说明

文档链接

Node.js 6

Node.js 6版本

Node.js运行环境

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运行环境

Python 3

Python 3.6版本

Python 3.9

Python 3.9版本

Python 3.10

Python 3.10版本

PHP 7.2

PHP 7.2.7版本

PHP运行环境

Java 11

Java 11版本

Java运行环境

Java 8

Java 8版本

.NET Core 3.1

.NET Core 3.1版本

.NET Core运行环境

Go 1.x

Go 1.8或以上版本

Go运行环境

Custom Runtime

自定义运行时(Debian 9)

Custom Runtime运行环境

Custom Runtime(Debian 10)

自定义运行时(Debian 10)

Custom Container

Custom Container运行环境

相关文档

  • 除控制台外,函数计算还提供以下方式来管理函数。

阿里云首页 函数计算(旧版) 相关技术圈