AWS Lambda 在每次执行函数时都会为函数创建一个新的临时文件夹,并在函数执行完成后删除。因此,如果您的 Lambda 函数需要在不同执行之间共享数据,则需要使用 Amazon S3、Amazon DynamoDB 等 AWS 服务来持久化数据。以下是将数据写入 S3 存储桶的示例代码:
import boto3
s3 = boto3.client('s3')
def lambda_handler(event, context):
# 获取要保存到 S3 中的数据
data = {"foo": "bar"}
# 将数据写入 S3 存储桶
s3.put_object(Bucket='my-bucket', Key='data.json', Body=json.dumps(data))
要在不同的 Lambda 函数执行之间访问数据,您可以使用以下代码检索数据:
import boto3
s3 = boto3.client('s3')
def lambda_handler(event, context):
# 从 S3 存储桶检索数据
response = s3.get_object(Bucket='my-bucket', Key='data.json')
data = json.loads(response['Body'].read())
# 对数据进行操作
foo = data['foo']