检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
出现如图1报错,说明依赖包没有把程序运行所需的动态链接库打包进去。 图1 error while loading shared libraries 针对该问题有以下两种处理方案: 代码逻辑较为复杂的情况下建议使用自定义镜像函数,创建自定义镜像函数详情请参见使用容器镜像创建函数。 制作依赖包时,把动态链接库一同复制到依赖包最外层。
上传ZIP文件:单击“添加文件”,上传ZIP文件。上传的文件大小限制为10M。 从OBS上传文件:填写“OBS链接URL”,OBS存储链接获取方法请参见OBS对象存储服务。 描述 依赖包的描述信息。 单击“确定”,完成依赖包的创建。默认首次创建的依赖包版本为“1”。 单击列表中的依赖包名称,进入版本历史界面
根据Java SDK下载提供的SDK地址,下载JavaRuntime SDK到本地开发环境解压,如图2所示。 图2 下载SDK解压 将zip中的Runtime-2.0.5.jar拷贝到本地目录,例如d:\\runtime中,在命令行窗口执行如下命令安装到本地的maven仓库中。 mvn
如果创建的函数类型是HTTP函数,请参考配置HTTP函数的代码包。 约束与限制 选择上传的代码包文件大小限制为40MB以内,如文件大小超过该限制,请使用从OBS上传函数代码方式上传代码包。 请参考表1查看所使用的运行时支持的直接上传代码文件类型。 表1 直接上传代码支持的文件类型 运行时 上传zip文件 上传jar文件
Eclipse-plugin 当前java没有对应的模板功能,且只支持传包到OBS上,不支持在线编辑,所以需要一个插件,能够支持在java的主流开发工具(Eclipse)上,实现一键创建java模板、java打包、上传到OBS和部署。 获取Eclipse 插件(软件包校验文件:Eclipse插件
文件包含了本次查询结果的所有事件,且最多导出5000条信息。 单击按钮,可以获取到事件操作记录的最新信息。 在需要查看的事件左侧,单击展开该记录的详细信息。 在需要查看的记录右侧,单击“查看事件”,会弹出一个窗口显示该操作事件结构的详细信息。 关于事件结构的关键字段详解,请参见《
trigger_config OBSTriggerConfig object OBS触发器配置,当trigger_type为OBS时需要设置 表5 OBSTriggerConfig 参数 参数类型 描述 bucket String OBS桶名(trigger_type为OBS时配置) 最小长度:1
创建Java函数时,函数入口参数需要提供函数完整的名字空间,参数格式为:包名.类名.函数名。 约束与限制 getToken()、getAccessKey()和getSecretKey()方法返回的内容包含敏感信息,请谨慎使用,避免造成用户敏感信息的泄露。 Java的initializer入口介绍 函数服务目前支持以下Java运行环境。
用作事件源的OBS存储桶,创建成功后不支持修改。 须知: 不同区域创建的桶不通用,比如您当前创建函数所选的region为“华北-北京四”,则列表中可选择的桶对应为“华北-北京四”区域下创建的桶,不会显示其他区域下创建的桶。 obs-cff 事件 必选参数。 选择触发函数的事件。支持选择的事件类型请参考表1。
下介绍计算资源消耗的方式: 函数计算资源消耗是函数所选内存和函数执行时长的乘积,执行时长是从函数代码开始执行的时间算起到其返回或终止的时间为止,计量的粒度是1毫秒,不足1毫秒按1毫秒计费。例如,函数A执行了0.5毫秒、函数B执行了2.3毫秒,则计算函数资源消耗时,函数A执行时长按
b和文件d的路径为“/mnt/test/b”和“/mnt/test/c/d”。 单击“确定”,完成挂载配置。 磁盘挂载应用示例 当函数挂载了文件系统后,对函数访问路径的读写就相当于对相关文件系统的读写。 如果把日志路径配置为函数访问路径的子目录,就可以轻松实现函数日志的持久化。 如下以函数挂载SFS
trigger_config 否 OBSTriggerConfig object OBS触发器配置,当trigger_type为OBS时需要设置 表4 OBSTriggerConfig 参数 是否必选 参数类型 描述 bucket 是 String OBS桶名(trigger_type为OBS时配置) 最小长度:1
请参见使用APIG触发器,创建APIG触发器,“安全认证”建议选择“None”,方便调试。 图1 APIG触发器 调用测试 将刚才创建的APIG触发器的URL+代码中注册的“/hello”复制到浏览器地址栏,可以看到页面返回结果如下: 图2 请求结果 父主题: 函数构建类实践
步骤三:调用函数 在父函数的函数详情页,单击“测试”,弹出“配置测试事件”弹窗,单击“创建”使用默认空白模板创建测试事件。 创建成功后,单击代码编辑区的“测试”,进行父函数调用。 查看执行结果。 父函数的执行结果显示“执行成功”,返回“200”。 图3 父函数执行历史 子函数的日志中,显示被调用的日志。
事件源是事件的来源,函数流仅支持自定义的应用作为事件源,通过自定义的事件通道发布事件到事件网格。 详情请参见事件源概述。 事件内容格式 参数“事件负载内容”的内容格式。(目前只支持application/json格式。) 事件负载内容 事件内容。 事件发生主题 事件发生的主题或对象,用以标识哪个具体对象发生了当前事件
FunctionGraph支持的监控指标 功能说明 本节定义了FunctionGraph上报云监控服务的监控指标的命名空间,监控指标列表和维度定义,用户可以通过云监控服务提供管理控制台或API接口来检索FunctionGraph产生的监控指标和告警信息。 命名空间 SYS.FunctionGraph
数执行入口。在线编辑代码区域支持工程方式的管理,请参考在线编辑代码区域管理使用。 完成代码编辑后,单击“部署代码”,控制台会将代码及相关的配置信息压缩到FunctionGraph服务可运行的代码包中,无需其他操作。如需再次修改代码编辑区中的代码,修改完成后需重新单击“部署代码”。
添加工程依赖 根据Java SDK下载提供的SDK地址,下载JavaRuntime SDK到本地开发环境解压,如图2所示。 图2 下载SDK解压 配置依赖 在工程目录下创建lib目录,将zip中的Runtime2.0.5.jar和代码所需要的三方依赖包拷贝到该目录,并把该jar添加为工程依赖。如图3所示:
FunctionGraph的函数如何读写上传的文件? 函数工作目录权限说明 函数可以读取代码目录下的文件,函数工作目录在入口文件的上一级,例如用户上传了文件夹backend,需要读取与入口文件同级目录的文件test.conf,可以用相对路径“code/backend/test.c
多个请求的总处理时长为每个请求的处理时长相加。单实例多并发下,同一个实例对并发的多个请求的计费时间为,从第一个请求开始处理计时,到最后一个并发的请求处理结束计一次时长费用。 FunctionGraph会根据实际的请求情况自动弹性伸缩函数实例,并发变高时,会分配更多的函数实例来处