我们使用机器学习技术将英文博客翻译为简体中文。您可以点击导航栏中的“中文(简体)”切换到英文版本。
使用亚马逊 EventBridge 日程安排程序在完成后自动删除日程安排
Amazon EventBridge 计划程序允许您大规模创建、运行和管理计划。
默认情况下,EventBridge 调度器允许客户为 每个账户设置
完成后删除
当您为计划配置自动删除时,EventBridge Scheduler 会在上次调用目标后不久将其删除。可以在创建计划时设置自动删除,也可以在上次调用计划之前的任何时候更新计划设置。
您可以在一次性和定期计划中配置此设置。
- 一次性计划 :在调度调用一次目标后,您的计划将被删除。
- 循环计划: 使用速率或 cron 表达式进行 设置,您的计划将在上次调用后删除。
如果由于配置为自动删除的计划失败而用尽所有
有了这项新功能,您可以在管理日程安排时节省时间、资源和运营成本。
将计划设置为在完成后删除
您可以在所有可用 EventBridge 计划程序的 亚马逊云科技 区域中
例如,假设你是一个平台上的开发人员,该平台允许最终用户在任务到期时收到通知。您已经在使用 EventBridge 调度器来实现此功能。对于用户在应用程序中创建的每项任务,您的代码都会在 EventBridge Scheduler 中创建一个新的时间表。现在,您可以将所有这些计划配置为在完成后自动删除。在计划运行后不久,它们就会从您的 EventBridge Scheduler 中删除,这样您就可以扩展系统并继续创建日程安排,从而更轻松地管理有效的日程安排和配额限制。
让我们看看如何使用 EventBridge 调度器的新功能来实现这个示例。当用户创建带有提醒的新任务时,您的应用程序会触发一个函数。该函数在 EventBridge 调度器中创建一次性日程安排。
此示例说明如何使用 亚马逊云科技 CLI 创建新的一次性计划,该计划在完成后自动删除,并以 SNS 作为目标。确保将 亚马逊云科技 CLI 更新到最新版本。然后,你可以使用参数 “完成后操作” 'DELETE'创建新的计划。
$ aws scheduler create-schedule --name SendEmailOnce \
--schedule-expression ”at(2023-08-02T17:35:00)",\
--schedule-expression-timezone "Europe/Helsinki" \
--flexible-time-window "{\"Mode\": \"OFF\"}" \
--target "{\"Arn\": \"arn:aws:sns:us-east-1:xxx:test-send-email\", \"RoleArn\": \" arn:aws:iam::xxxx:role/sam_scheduler_role\" }" \
--action-after-completion 'DELETE'
此命令创建
名
为 SendeMailOnce 的一次性计划,该计划在时间表表达式中定义的特定日期运行 ,并在
计划表达式
时区中定义的特定时区运行。
此时间表未使用
您可以使用
$ aws scheduler get-schedule --name SendEmailOnce
{
"ActionAfterCompletion": "DELETE",
"Arn": "arn:aws:scheduler:us-east-1:905614108351:schedule/default/SendEmailOnce",
"CreationDate": 1690874334.83,
"FlexibleTimeWindow": {
"Mode": "OFF"
},
"GroupName": "default",
"LastModificationDate": 1690874334.83,
"Name": "SendEmailOnce3",
"ScheduleExpression": "at(2023-08-02T17:35:00)",
"ScheduleExpressionTimezone": "Europe/Helsinki",
"State": "ENABLED",
"Target": {
"Arn": "arn:aws:sns:us-east-1:xxxx:test-send-email",
"RetryPolicy": {
"MaximumEventAgeInSeconds": 86400,
"MaximumRetryAttempts": 185
},
"RoleArn": "arn:aws:iam::XXXX:role/scheduler_role"
}
}
此外,您可以从 亚马逊云科技 管理控制台查看时间表的详细信息。
现在,当通知日期到来时,EventBridge Scheduler 会调用计划中配置的目标(在本例中为 SNS),并通过电子邮件向客户发送通知。
此计划完成后不久,如果您
$ aws scheduler list-schedules
{
"Schedules": [
]
}
自动化的好处
传统上,EventBridge 调度器解决的许多问题都是使用批处理和基于拉取的模型来解决的。
一些组织正在使用EventBridge Scheduler将其基于拉取的模型替换为更具动态性的基于推送的模型。在实施 Scheduler 之前,他们依靠客户在需要时询问数据。现在,借助EventBridge Scheduler,他们正在创建时间表,以便在旅程的关键时刻向客户报告。
例如,航空公司可以使用 EventBridge Scheduler 在航班起飞前 24 小时、4 小时和 2 小时创建一次性时刻表,让乘客了解最新的航班状态。乘客会收到一条通知,其中包含在线办理登机手续的链接、值机柜台号码、行李领取信息以及发生的任何航班变更。通过这种方式,乘客可以随时了解自己的航班状态,他们可以立即采取行动。这种动态模型不仅有助于改善客户体验,还可以提高航空公司的运营效率。
其他组织使用EventBridge Scheduler来替换批处理操作,因为您可以配置在需要时启动批处理的时间表。此外,您可以利用 EventBridge 调度程序时区,在对最终客户来说合理的时间运行流程。
例如,假设一家国际金融机构必须在当天结束时向客户发送账户报表。您可以使用 EventBridge Scheduler 为每位客户设置定期计划,在客户时区的一天结束时发送报告。通过这种方式,您可以改善客户体验,因为现在系统可以根据他们的设置进行个性化设置,还可以减少运营开销,因为处理操作是全天分布的。
此外,EventBridge 调度器为客户解决了许多新的用例。例如,如果您是一家处理付款的金融机构,则可以为每笔需要确认的大额交易创建一次性时间表。如果计划运行时交易未得到确认,则可以取消交易。这降低了处理交易的风险,改善了客户体验,还可以通过使交易实时化来提高流程的自动化程度。
另一个用例是处理信用卡的到期日期。您可以创建一次性计划,在到期日期前一个月向客户发送电子邮件以更新其信用卡信息。与使用服务器和批处理的传统实现相比,该解决方案消除了运营开销。
结论
在前面列出的用例中,自动化和任务调度可以改善最终用户体验,消除无差别的繁重工作,并受益于使用在计划完成后删除计划的新功能。
这篇博客文章介绍了 Amazon EventBridge 计划程序的新功能,该功能可自动删除已完成的日程安排。此功能简化了 EventBridge 调度程序的使用,减少了大规模管理日程安排的运营开销,并允许您进一步扩展。在此功能 的
要开始使用 EventBridge 调度程序,请访问
*前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您发展海外业务和/或了解行业前沿技术选择推荐该服务。