选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

SQS使用 Step Functions Express 工作流程处理来自亚马逊的大量消息

聚焦模式
SQS使用 Step Functions Express 工作流程处理来自亚马逊的大量消息 - AWS Step Functions

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

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

此示例项目演示如何使用 AWS Step Functions Express Workflow 来处理来自高容量事件源(例如亚马逊简单队列服务 (AmazonSQS))的消息或数据。由于快速工作流可以非常高的速率启动,因此它们非常适合大批量事件处理或流数据工作负载。

以下是从事件源执行状态机的两种常用方法:

  • 配置 Amazon CloudWatch Events 规则,以便在事件源发出事件时启动状态机执行。有关更多信息,请参阅创建在 CloudWatch 事件上触发的事件规则

  • 将事件源映射到 Lambda 函数,并编写函数代码来执行状态机。每次事件源发出事件时,都会调用该 AWS Lambda 函数,进而启动状态机执行。有关更多信息,请参阅在 Amazon AWS Lambda 上使用SQS

此示例项目使用第二种方法在 Amazon 队列每次 Amazon SQS 队列发送消息时开始执行。您可以使用类似的配置,触发来自其他事件源的快速工作流执行,比如 Amazon Simple Storage Service (Amazon S3)、Amazon DynamoDB 和 Amazon Kinesis。

有关快速工作流和 Step Functions 服务集成的更多信息,请参阅以下内容:

第 1 步:创建状态机

  1. 打开 Step Functions 控制台,然后选择创建状态机

  2. 查找并选择要使用的入门模板。选择下一步以继续。

  3. 选择 “运行演示” 以创建只读和 ready-to-deploy工作流程,或者选择 “在其上构建” 以创建可编辑的状态机定义,您可以在此基础上构建并稍后部署。

  4. 选择使用模板继续进行选择。

后续步骤取决于之前的选择:

  1. 运行演示 — 您可以先查看状态机,然后再创建只读项目,并将资源部署 AWS CloudFormation 到您的 AWS 账户。

    可以查看状态机定义,准备就绪后,选择部署并运行来部署项目并创建资源。

    部署可能需要最长 10 分钟来创建资源和权限。可以在 AWS CloudFormation中使用堆栈 ID 链接来监控进度。

    部署完成后,应该在控制台中看到新的状态机。

  2. 构建依据:可以查看和编辑工作流程定义。在尝试运行自定义工作流程之前,可能需要为示例项目中的占位符设置值。

注意

部署到您的账户的服务可能会收取标准费用。

第 2 步:触发状态机执行

  1. 打开亚马逊SQS控制台

  2. 选择示例项目创建的队列。

    该名称将类似于示例-SQSQueue-wJalr XUtnFEMI

  3. Queue Actions (队列操作) 列表中,选择 Send a Message (发送消息)

  4. 使用复制按钮复制以下消息,然后在 Send a Message (发送邮件) 窗口中输入该消息,然后选择 Send Message (发送邮件)

    注意

    在此示例消息中,已使用换行符对 input: 进行格式化以适应页面。使用复制按钮或以其他方式确保它作为一行输入,没有中断。

    { "input": "QW5kIGxpa2UgdGhlIGJhc2VsZXNzIGZhYnJpYyBvZiB0aGlzIHZpc2lvbiwgVGhlIGNsb3VkLWNhcHBlZCB0b3dlcnMsIHRoZSBnb3JnZW 91cyBwYWxhY2VzLCBUaGUgc29sZW1uIHRlbXBsZXMsIHRoZSBncmVhdCBnbG9iZSBpdHNlbGbigJQgWWVhLCBhbGwgd2hpY2ggaXQgaW5o ZXJpdOKAlHNoYWxsIGRpc3NvbHZlLCBBbmQgbGlrZSB0aGlzIGluc3Vic3RhbnRpYWwgcGFnZWFudCBmYWRlZCwgTGVhdmUgbm90IGEgcm FjayBiZWhpbmQuIFdlIGFyZSBzdWNoIHN0dWZmIEFzIGRyZWFtcyBhcmUgbWFkZSBvbiwgYW5kIG91ciBsaXR0bGUgbGlmZSBJcyByb3Vu ZGVkIHdpdGggYSBzbGVlcC4gU2lyLCBJIGFtIHZleGVkLiBCZWFyIHdpdGggbXkgd2Vha25lc3MuIE15IG9sZCBicmFpbiBpcyB0cm91Ym xlZC4gQmUgbm90IGRpc3R1cmJlZCB3aXRoIG15IGluZmlybWl0eS4gSWYgeW91IGJlIHBsZWFzZWQsIHJldGlyZSBpbnRvIG15IGNlbGwg QW5kIHRoZXJlIHJlcG9zZS4gQSB0dXJuIG9yIHR3byBJ4oCZbGwgd2FsayBUbyBzdGlsbCBteSBiZWF0aW5nIG1pbmQu" }
  5. 选择关闭

  6. 打开 Step Functions 控制台

  7. 前往您的 Amazon CloudWatch 日志组并检查日志。日志组的名称将类似于示例-ExpressLogGroup-wJalr XUtnFEMI

本页内容

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。