

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在 EventBridge 调度器中配置灵活的时间窗口
<a name="managing-schedule-flexible-time-windows"></a>

 当您使用灵活的时间窗口配置计划时，S EventBridge cheduler 会在您设置的时间窗口内调用目标。这在不需要通过精确计划来调用目标的情况下很有用。设置灵活的时间窗可分散目标调用，从而提高计划的可靠性。

 例如，如果您为每小时运行一次的计划配置了 15 分钟的灵活时间窗口，则它会在计划时间之后的 15 分钟内调用目标。以下 AWS CLI和 S EventBridge cheduler SDK 示例用于`UpdateSchedule`为每小时运行一次的计划设置 15 分钟的弹性时间窗口。

**注意**  
 您必须指定是否要设置灵活的时间窗口。如果不希望设置此选项，请指定 `OFF`。如果将该值设置为 `FLEXIBLE`，则必须指定计划运行的最大时间段。

**Example AWS CLI**  

```
$ aws scheduler update-schedule --name lambda-universal --schedule-expression 'rate(1 hour)' \
--target '{"RoleArn": "ROLE_ARN", "Arn":"arn:aws:scheduler:::aws-sdk:lambda:invoke" "Input": "{\"FunctionName\":\"arn:aws:lambda:REGION:123456789012:function:HelloWorld\",\"InvocationType\":\"Event\",\"Payload\":\"{\\\"message\\\":\\\"testing function\\\"}\"}" }' \
--flexible-time-window '{ "Mode": "FLEXIBLE", "MaximumWindowInMinutes": 15} \
```

```
{
    "ScheduleArn": "arn:aws:scheduler:us-west-2:123456789012:schedule/lambda-universal"
}
```

**Example Python SDK**  

```
import boto3
scheduler = boto3.client('scheduler')

sqs_templated = {
    "RoleArn": "<ROLE_ARN>",
    "Arn": "<QUEUE_ARN>",
    "Input": "{}"}

flex_window = { "Mode": "FLEXIBLE", "MaximumWindowInMinutes": 15}

scheduler.update_schedule(Name="your-schedule",
    ScheduleExpression="rate(1 hour)",
    Target=sqs_templated,
    FlexibleTimeWindow=flex_window)
```