检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
函数如何访问MySQL数据库? 本章介绍如何访问MySQL数据库,具体操作步骤如下: 确认MySQL数据库是否搭建在VPC的网络中? 是,为函数设置与MySQL数据库相同的VPC、子网,具体请参考函数配置VPC。 否,具体请参考如何配置外网访问?。 在函数模板中搜索mysql,根据使
制作依赖包 制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。
install PyMySQL --root /tmp/pymysql 执行成功后,执行以下命令。 cd /tmp/pymysql/ 进入子目录直到site-packages路径下(一般路径为usr/lib64/python2.7/site-packages/),接下来执行以下命令。 zip
制作依赖包 制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK")
install PyMySQL --root /tmp/pymysql 执行成功后,执行以下命令。 cd /tmp/pymysql/ 进入子目录直到site-packages路径下(一般路径为usr/lib64/python2.7/site-packages/),接下来执行以下命令。 zip
200”。 图2 添加请求头并调用 未开启动态内存,调用接口时默认取创建函数时设置的内存大小; 若配置了动态内存,未设置value值,调用同步执行接口或异步执行接口时仍默认取创建函数设置的内存大小,调用成功返回“200”。 若配置了动态内存,内存值设置错误,未包含在128、256
"ok"; } } 当函数的事件源是APIG时,相关约束条件请参考Base64解码和返回结构体的说明。 工程编译打包。 在命令行窗口执行如下命令进行编译打包。 mvn package assembly:single 编译完成后在target目录会生成一个demo-jar-with-dependencies
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK")
函数访问外部资源 函数如何访问MySQL数据库? 函数如何访问Redis? 函数无法通过VPC连接对应的Redis? 如何配置外网访问?
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK")
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK")
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK")
等待 RUNNING: 执行中 SUCCESS: 执行成功 FAIL: 执行失败 DISCARD: 请求丢弃 枚举值: WAIT RUNNING SUCCESS FAIL DISCARD error_message String 异步调用错误信息,如果执行成功,则返回空 error_code
函数执行入口方法中的context参数获取具有委托中权限的token、ak、sk,用于访问其他云服务。如果用户函数不访问任何云服务,则不用提供委托名称。 app_xrole String 函数执行委托。可为函数执行单独配置执行委托,这将减小不必要的性能损耗;不单独配置执行委托时,函数执行和函数配置将使用同一委托。
选择“空白模板”,事件名称输入“test”,完成后单击“创建”。 图4 配置测试事件 步骤三:查看执行结果 单击test事件的“测试”,成功执行后,在右侧查看执行结果。 “函数返回”显示函数的返回结果。 “日志”部分显示函数执行过程中生成的日志。 “执行摘要”部分显示“日志”中的关键信息。 此页面最多显示2K日志,了解函数更多日志信息,请参考查询日志。
变量,在代码中动态获取,保证敏感数据的安全。 动态配置:函数逻辑中需要动态调整的配置,例如查询周期、超时时间,可提取为环境变量避免业务每次变化都需要修改代码。 操作步骤 设置FunctionGraph函数的加密配置和环境变量,无需对代码进行任何更改,可以将设置动态参数传递到函数代码和库。
在函数中引入动态链接库 函数运行环境中已经默认将代码根目录和根目录下的lib目录加入到LD_LIBRARY_PATH中,只需要将动态链接库放到此处即可。 在代码中直接修改LD_LIBRARY_PATH环境变量。 如果依赖的.so文件放在其他目录,可以在配置页面设置LD_LIBRA
raph即可运行,无需其它的部署操作。 制作ZIP包的时候,单函数入口文件必须在根目录,保证解压后,直接出现函数执行入口文件,才能正常运行。 对于Go runtime,必须在编译之后打zip包,编译后的动态库文件名称必须与函数执行入口的插件名称保持一致,例如:动态库名称为testplugin
运行时。您可以使用可执行文件(名称为bootstrap)的形式将运行时包含在函数的程序包中,当调用一个FunctionGraph函数时,它将运行函数的处理程序方法。 自定义的运行时在FunctionGraph执行环境中运行,它可以是Shell脚本,也可以是可在linux可执行的二进制文件。