全部产品
阿里云办公

函数简介

更新时间:2018-09-19 10:36:01

函数是系统调度和运行的单位。函数必须从属于服务,一个服务下的所有函数都共享该服务的属性,例如授权,日志设置。

函数属性

在创建函数时,您需要指定下述信息:

  • functionName(必选): 函数的名字。在当前服务内唯一,并符合如下约束:
    • 由英文字符(a-z)或(A-Z),数字(0-9),下划线(_)和中划线(-)组成
    • 首字母必须为英文字母(a-z)、(A-Z)或下划线(_)
    • 大小写敏感
    • 长度为 1-128 字符
  • runtime(必选): 函数运行时类型。
  • code(必选): 代码包。必须是 zip 类型,可以存放在 OSS 上,或者直接上传。
  • handler(必选): 处理函数,它是函数计算系统运行用户函数的调用入口。
  • description(可选): 函数的描述。函数计算系统并不会使用该属性值,但建议您为服务设置一个简洁、清晰的描述。
  • timeout(可选): 函数的最大运行时间,单位为秒。
  • MemorySize(可选): 函数运行所需的内存资源,单位为 MB。取值范围为 [128, 3072],以 64 MB 为步长递进。

除函数名字外,其他属性均可后续修改。

支持的函数运行时列表

运行时类型 说明 文档链接
nodejs6 Node.js 6.10.3 版本 Nodejs Runtime
nodejs8 Node.js 8.9.0 版本 Nodejs Runtime
python2.7 Python 2.7 版本 Python Runtime
python3 Python 3.6 版本 Python Runtime
php7.2 Php 7.2.7 版本 Php Runtime
java8 Java 8 版本 Java Runtime

使用命令行工具创建和更新函数

在命令行工具的 shell 模式中,您可以使用 mkf/upf 命令创建/更新函数,并通过info命令查看函数属性。例如,我们要在 hello 服务下创建和更新名为 world 的函数:

  1. 创建服务 hello :mks hello

  2. 在本地实现一个简单的函数文件 index.js ,放在 code 文件夹下。

    1. 'use strict';
    2. console.log('loading function');
    3. module.exports.handler = function(event, context, callback) {
    4. console.log('Receive event:', event.toString());
    5. callback(null, event);
    6. };
  3. 创建函数 world。

    1. mkf hello/world -t nodejs6 -h index.handler -d code
  4. 更新 world 的描述:upf hello/world --description "this is world function"

  5. 查看 world 的属性:info hello/world

相关链接

函数的增删改查