Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何将多个Lambda函数从python 2.7更新到3.6_Python 3.x_Python 2.7_Aws Lambda - Fatal编程技术网

Python 3.x 如何将多个Lambda函数从python 2.7更新到3.6

Python 3.x 如何将多个Lambda函数从python 2.7更新到3.6,python-3.x,python-2.7,aws-lambda,Python 3.x,Python 2.7,Aws Lambda,在python 2.7运行时环境中,我有大约13个带触发器的Lambda函数。我需要更新到3.6 最有效的方法是什么?我需要创建所有新的lambda吗?如果出现问题,我是否能够回滚到2.7 lambda 任何帮助都将不胜感激。您可以在AWS管理控制台中为lambda处理程序尝试代码下方的运行时设置。在那里,您可以选择您的运行时(例如Python 3.8或2.7)。由您来解决所有背面兼容性问题 显然,这意味着您需要为每个处理程序执行此操作。 如果您还没有这样做,那么更好的方法是使用serverle

在python 2.7运行时环境中,我有大约13个带触发器的Lambda函数。我需要更新到3.6

最有效的方法是什么?我需要创建所有新的lambda吗?如果出现问题,我是否能够回滚到2.7 lambda


任何帮助都将不胜感激。

您可以在AWS管理控制台中为lambda处理程序尝试代码下方的运行时设置。在那里,您可以选择您的运行时(例如Python 3.8或2.7)。由您来解决所有背面兼容性问题

显然,这意味着您需要为每个处理程序执行此操作。 如果您还没有这样做,那么更好的方法是使用serverless并从serverless.yaml配置文件部署堆栈

请注意,从2021年7月中旬开始,AWS将开始其Python2.7支持的第一阶段。因此,对于一个更适合未来的解决方案,最好考虑一下这一点


希望这能有所帮助。

如果您想手动执行,请转到Lambda控制台->操作->导出功能->下载部署包。这将下载带有Lambda和任何支持库的zip。通过创建具有正确名称、角色和运行时的新Lambda,然后使用Upload From->.zip文件选项,可以逆转此过程。 这就是如何备份Lambda并手动重新安装它们的方法

要更新运行时,只需进入Lambda控制台->代码并滚动到运行时设置以更改运行时。根据Lambda所拥有的代码,从python2跳到python3可能不会运行—因此,仅仅更改运行时可能不是您需要做的唯一事情

如果要编写运行时更新的脚本,则可以使用如下CLI命令:

aws lambda更新函数配置--函数名“YourFunctionName”--运行时“python3.6”