博客 亚马逊网络服务 亚马逊SQS:AWS的队列服务

亚马逊SQS:AWS的队列服务

你准备好了吗 AWS认证开发人员助理认证考试? 在这个空间中,我们正在撰写有关主题的系列文章,这些主题在开发人员助理认证考试中涵盖。在本文中,我们将解释简单队列服务(Amazon SQS)的重要概念之一。对于开发人员助理考试,您可能希望从该主题获得几个问题。您可以订阅我们以接收有关此主题的进一步更新。  

什么是AWS SQS?

开发人员准认证考试是准级别中最简单的考试,从此考试开始您的认证是个好主意。另外,我们建议您通过解决方案架构师认证考试,该考试涵盖AWS中提供的所有服务的概念。

开发人员助理课程

这是快照 开发人员合作蓝图 参加开发者助理考试。

aws-developer-associate-blueprint

亚马逊SQS

亚马逊SQS是AWS提供的完全托管的队列服务。 亚马逊SQS的一些关键功能是

  • 它易于使用。它具有一个Web界面,使人们可以轻松地管理和使用队列。
  • 它有助于解耦应用程序的组件。因此,如果您想为应用程序增加可伸缩性,则将SQS作为组件可以大大帮助您。
  • 它是可扩展的。您可以以任何吞吐量级别传输任何数量的数据。您无需担心队列服务本身的工作。当消息中添加了很多消息时,AWS将自动确保可以承担负载。
  • SDK的可用性– SQS有很多可用的API,可用于处理队列。其中一些如下
    • CreateQueue –此API可用于在SQS中创建队列。
    • SendMessage –此API可用于将消息发送到SQS中的现有队列。
    • 接收消息–该API可用于从SQS中的现有队列接收消息。
    • DeleteMessage–该API可用于从SQS中的现有队列中删除消息。

开发人员考试的关键方面之一是了解如何设置队列以及如何使用API​​处理队列。

在SQS中使用队列

首先,在使用API​​之前,请先从AWS信息中心了解如何使用各种SQS功能。

  • 创建队列–登录到您的AWS控制台。您将在“消息传递”选项下看到“简单队列服务”。

aws-sns-messaging-option

 

  • 单击创建新队列以在SQS中创建队列。

AWS SQS-创建新队列

  • 为队列指定名称,并为队列的不同设置指定值。

AWS SQS-队列输入

队列的不同参数说明如下

    • 默认可见性超时–这是从队列中读取消息后消息不可见的超时时间。理想情况下,应在此间隔内处理和删除消息。
    • 邮件保留期限–这是邮件应保留在队列中的时间。默认时间是4天。因此,任何超过4天的邮件都会被删除。
    • 最大邮件大小–这是邮件的最大大小。
    • 传递延迟–这是发送到队列的消息对队列的使用者不可见的延迟。
    • 接收消息等待时间–设置为0秒时,这称为短轮询。这意味着aws将继续轮询队列以查看是否存在消息。还有长轮询的概念,您不需要每次都轮询队列。为此,您需要将此参数的值设置为大于0且小于或等于20的值。
  • 创建队列后,如果要将消息添加到队列中,请单击所需的队列,然后单击“发送消息”选项。

AWS SQS-将消息添加到队列

为消息指定一个值,然后单击“发送消息”按钮。

AWS SQS-发送消息

  • 接下来选择队列,然后单击查看/删除消息

AWS SQS-查看/删除消息

  • 点击“开始轮询消息”

AWS SQS-轮询消息

  • 之前创建的消息将在队列中可见。如果需要,您可以单击“更多详细信息”或单击“删除消息”以从队列中删除消息。

AWS SQS-消息已创建

从CLI使用SQS

现在,我们已经了解了如何通过仪表板使用SQS,现在让我们在命令行界面上使用队列。

以下URL中提供了命令行界面的安装

http://docs.aws.amazon.com/cli/latest/userguide/installing.html

如果您使用的是Windows系统,则可以通过powershell使用CLI。

  • 首先,请确保发出as配置,以确保Powershell与AWS一起使用。在这里,您必须指定访问密钥ID和秘密访问密钥。

AWS SQS-Windows Powershell

  • 如果要获取队列的URL,可以发出以下命令

平方尺–区域ap-southeast-1 get-queue-url–queue-name Demo

在上面的命令中,您通过–region参数提到了区域。获取队列URL的选项也是get-queue-url选项。然后,您只需要指定队列名称。

AWS SQS-指定队列名称

 

  • 假设我们要发送一条带有“ Test Message2”文本的消息到队列,我们​​可以通过以下命令在powershell中执行此操作

平方尺send-message –queue-url //ap-southeast-1.queue.amazonaws.com/085363624145/Demo —消息正文“ Test Message2”

因此,在这里您需要指定send-message选项,以将消息发送到队列。然后,您需要提及队列名称和需要发送到sqs的消息正文。

AWS SQS-从Powershell发送消息到队列

然后,您将获得创建的消息的MessageID。

如果您在aws控制台中转到SQS仪表板,则将能够看到新创建的消息。

AWS SQS-仪表板

  • 如果要通过powershell检索消息,则需要执行以下命令

平方尺receive-message –queue-url //ap-southeast-1.queue.amazonaws.com/085363624145/Demo –attribute-names All –message-attribute-names All –max-number-of-messages 10

在这里,我们需要提及队列URL,以及我们要检索具有所有属性的所有消息的事实。我们可以提及通过max-number-of-messages参数返回的消息数的限制。

这将检索所有消息,还检索消息的内容

AWS SQS-检索消息的内容

关于SQS的最后一点要记住

  • 它设计用于应用程序的去耦。
  • 它旨在实现可伸缩性。发送大量邮件时,您无需担心。
  • 有大量的API可用于SQS队列。
  • 您可以使用aws sqs get-queue-url来获取aws中队列的URL。然后可以将其用于SQS中的后续操作。
  • 接下来,您可以通过SQS的send-message API将消息发送到队列
  • 接下来,您可以通过SQS的接收消息API从队列中检索消息
  • 请记住SQS队列的以下参数,因为它们对于考试很重要
    • 默认可见性超时–这是从队列中读取消息后消息不可见的超时时间。理想情况下,应在此间隔内处理和删除消息。
    • 邮件保留期限–这是邮件应保留在队列中的时间。默认时间是4天。因此,任何超过4天的邮件都会被删除。
    • 接收消息等待时间–设置为0秒时,这称为短轮询。这意味着aws将继续轮询队列以查看是否存在消息。还有长轮询的概念,您不需要每次都轮询队列。为此,您需要将此参数的值设置为大于0且小于或等于20的值。

概要

在本文中,我们解释了如何使用简单QueueService(Amazon SQS)。这是Amazon Web Services(AWS)提供的最重要的服务之一。在您的认证考试中,您可能会想到许多与此主题相关的问题。

如果您正在准备AWS认证考试并寻求任何帮助,请给我们发送邮件以致电我们的客户支持团队。 

关于苏吉思·库马尔

专业人士将云产品与AWS的深入知识联系起来。
传播爱心

发表评论

请输入您的评论!
请在这里输入您的名字