函数运行时
CFC目前支持的运行环境有Node.js 10, Node.js 12, Python 2.7, Python 3.6, Java 8, Golang, PHP 7.2, Lua 4.3, .Net Core 2.2, PowerShell 6.2。 选择以上的运行环境运行CFC函数,各运行环境使用说明文档详见开发语言,如 Python。
运行环境中已经内置了常用的依赖, 可以直接在函数中引用。
函数执行路径
用户的函数会运行在 CFC 定制的容器环境内。函数代码包会被加载到 /var/task 路径上。如果需要读取代码包中包含的其他文件,可以使用绝对路径,或是参考以下代码片段,获取当前文件路径后,根据相对位置拼接完整路径。
Node.js:
const path = require("path"); exports.handler = (event, context, callback) => { const datafile =
path.join(__dirname, "data.txt") callback(null, datafile); };
Python:
# -*- coding: utf-8 -*- import os def handler(event, context): currentdir
= os.path.dirname(os.path.abspath(__file__)) datafile = os.path.join(currentdir, "data.txt") return datafile
函数执行安全
函数执行环境是独立安全的,确保安全是函数计算最重要的目标之一。 用户的函数运行环境中的隔离保护和百度云BCC是同一级别的,函数计算是在虚拟机级别隔离运行。 CFC还在网络、数据、代码、防DDos攻击等方面做了完备的保护,确保用户的信息安全。
函数代码安全
函数计算对代码进行校验并将其存储在CFC私有BOS仓库中。使用代码时,函数计算都执行完整性检查。代码执行与它自己的文件系统和网络命名空间相隔离。