You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AWS Lambda中设置停止Glue任务后延迟启动新任务?

在AWS Lambda中添加Glue任务停止与启动的延迟

要在停止Glue任务和启动新任务之间添加至少5秒的延迟,只需引入Python标准库的time模块,调用time.sleep()函数即可,具体修改如下:

修改后的完整代码

import boto3
import json
import time  # 导入time模块

def lambda_handler(event, context):
    client = boto3.client('glue')
    body = json.loads(event['body'])            
    job_id_to_stop = body['job_id_to_stop']     
    job_to_start_argument = body['job_to_start_argument'] 
    
    # 停止指定Glue任务
    client.batch_stop_job_run(
            JobName='job-to-stop',    
            JobRunIds=[
                    job_id_to_stop                 
                ]
    )
    
    # 添加5秒延迟
    time.sleep(5)
    
    # 启动新的Glue任务
    client.start_job_run(
            JobName = 'job-to-start',    
            Arguments = {
                '--job_to_start_argument':  job_to_start_argument                       
            }
        )
    
    return  {
        "statusCode": 200,
        "headers": {
            "Content-Type": "application/json"
        },
        "body": "Success"
    }

关键说明

  • time是Python标准库模块,Lambda环境默认支持,无需额外安装依赖。
  • time.sleep(5)会让Lambda函数暂停执行5秒,若需要更长延迟,直接修改括号内的数值(单位为秒)即可。
  • Lambda默认执行时间配额为15分钟,只要总执行时间不超过该配额,这种延迟方式完全可行。

内容的提问来源于stack exchange,提问作者JZnrgn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 21:35:05