Bal*_*ala 5 python variables amazon-web-services aws-lambda
我有一个 aws lambda python 问题。我在 lambda 层中定义了一个变量,当我们多次调用该代码时,一次执行的变量值将被保留并供后续运行使用。
有没有办法让每个 lambda 执行重置所有变量而不使用上次运行中的任何变量值。
我怀疑这与 Lambda Layers 无关,而与容器重用(Lambda 的一项性能功能)有关。在处理程序函数之外声明的任何内容都将在热重启后持续存在。
有关更多信息,请参阅AWS Lambda 执行上下文。
测试冷/热启动并重置环境的一种可能方法如下:
import json
import logging
cache = {}
cold_start = True
def handler(event, context):
global cold_start
if cold_start:
print("Cold start")
cold_start = False
else:
print("Warm start, reset cache")
cache = {}
# do work here
cache['name'] = 'Jason'
cache['age'] = 27
Run Code Online (Sandbox Code Playgroud)