Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Amazon Web Services

Lab - Integrating Amazon Simple Queue Service (Amazon SQS) (简体中文)

Amazon Web Services and Amazon via AWS Skill Builder

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it

实验概览

在本 AWS 实验中,您将通过使用两个 Python 脚本获得 Amazon Simple Queue Service (Amazon SQS) 的实践经验。Amazon SQS 是一项完全托管式消息队列服务,可帮助解耦云应用程序中的组件,用于提供可靠且可扩展的通信方式。

Amazon SQS 降低了与管理和操作面向消息的中间件相关的复杂性和开销。开发人员可以利用它专注于差异化工作。例如,您可以将 Amazon SQS 用作事件源,在每次将图像上传到 Amazon Simple Storage Service (Amazon S3) 存储桶时调用 Lambda 函数执行图像分析。或者,您可以使用 Amazon SQS 将消息从 Amazon Elastic Compute Cloud (Amazon EC2) 实例发送到另一个 EC2 实例进行处理。

Amazon SQS 提供两种类型的消息队列:标准队列和先进先出 (FIFO) 队列。标准队列提供最大吞吐量、最大努力排序和至少一次传输。FIFO 队列可以确保按照消息的发送顺序对消息只进行一次处理。

Amazon SQS 的工作原理如下:

  • 分布式应用程序的一个组件(生产者)向 Amazon SQS 中的一个队列发送消息(这种操作称为加入队列)。该消息包含消息接收者执行任务所需的所有信息。
  • 该消息在队列中等待,直到消费者(分布式应用程序的另一个组件)检索并处理该消息(这种操作称为退出队列)。
  • 消费者处理该消息,然后将其从队列中删除,以防止再次接收和处理该消息。

在本实验中,您将使用两个 Python 脚本来更好地了解 Amazon SQS 的工作原理以及如何使用其功能。第一个 Python 脚本 (receive.py) 是接收者,用于持续侦听和接收来自 SQS 队列的消息。该脚本演示了连接到队列并实时检索消息的过程。

第二个 Python 脚本 (send.py) 是生产者,它向您提出了一个需要解决的代码挑战。目标是完成向 SQS 队列发送消息所需的代码的编写。本实验将帮助您了解向队列发送消息并从队列接收消息的过程,以便让您可以在现实场景中应用这些知识。

目标

本实验结束时,您将能够完成以下操作:

  • 使用控制台和 AWS 命令行界面 (AWS CLI) 查看 SQS 队列。
  • 查看并了解 receive.py 脚本的功能。
  • 运行 receive.py 脚本以侦听 BackgroundCheckApp 队列。
  • 更新 send.py 脚本以向 BackgroundCheckApp 队列发送 Hello World 消息。
  • 测试 send.py 脚本以确认它将消息正确发送到了 SQS 队列。

技术性知识先决条件

要成功完成本实验,您应该:

  • 基本了解 AWS 服务。
  • 能够熟练使用 AWS Cloud9 编辑和测试 Python 脚本。

时长

完成本实验需要 30 分钟。

图标说明

本实验中使用了不同图标,以提醒大家注意各种类型的说明和备注。下面的列表解释了每个图标的用途:

  • 命令:您必须运行的命令。
  • 预期输出:您可以用来验证命令或已编辑文件输出的示例输出。
  • 注意:一项提示、技巧或重要指导。
  • 思考:暂停一下,思考如何在自己的环境中应用某个概念,或者就当前的主题展开讨论。
  • 提示:针对某个问题或挑战的提示。
  • 任务完成:本实验的总结或结论要点。

Reviews

Start your review of Lab - Integrating Amazon Simple Queue Service (Amazon SQS) (简体中文)

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.