zoukankan      html  css  js  c++  java
  • Amazon SQS 可见性超时

    当使用者接收并处理来自某个队列的消息时,消息将保留在该队列中。Amazon SQS 不会自动删除消息。因为 Amazon SQS 是分布式系统,所以无法保证使用者实际收到消息(例如,由于连接问题或由于使用者应用程序问题)。因此,使用者在接收和处理消息后必须从队列中删除该消息。

    
	            可见性超时

    在收到消息后,消息将立即保留在队列中。为防止其他使用者再次处理消息,Amazon SQS 设置了可见性超时,这是 Amazon SQS 防止其他使用者接收和处理消息的时间段。消息的默认可见性超时为 30 秒。最小值为 0 秒。最大值为 12 小时。 有关使用 AWS 管理控制台配置队列的可见性超时以及使用 AWS SDK for Java(以及 SetQueueAttributesGetQueueAttributesReceiveMessageChangeMessageVisibility 和 ChangeMessageVisibilityBatch 操作)配置一条或多条消息的可见性超时的信息,请参阅配置 Amazon SQS 队列的可见性超时

    注意

    对于标准队列,可见性超时无法保证不会接收消息两次。有关更多信息,请参阅至少一次传递

    FIFO 队列允许创建者或使用者进行多次重试:

    • 如果创建者检测到失败的 SendMessage 操作,它会使用同一个消息重复数据删除 ID 尽可能多地重新尝试发送。假设创建者在重复数据删除间隔过期前收到至少一次确认,则多次重试不会影响消息排序,也不会引入重复项。

    • 如果使用者检测到失败的 ReceiveMessage 操作,它可使用同一个接收请求尝试 ID 进行所需数量的重试。假设使用者在可见性超时过期前收到至少一次确认,则多次重试不会影响消息排序。

    • 在收到一个具有消息组 ID 的消息时,除非您删除该消息或该消息变为可见,否则不会返回同一消息组 ID 的更多消息。

    终止消息的可见性超时

    收到来自某个队列的某条消息时,您可能会发现,您实际上不想处理并删除该消息。Amazon SQS 允许您终止特定消息的可见性超时。这将使该消息对系统中的其他组件立即可见并且可用于处理。

    要在调用 ReceiveMessage 后终止消息的可见性超时,请调用 ChangeMessageVisibility 并将 VisibilityTimeout 设置为 0 秒。

  • 相关阅读:
    iperf简单说明
    计算后图像大小参数计算
    ipywidgets安装报错
    Cannot uninstall [pacakage]. It is a distutils installed project
    torch
    es-centos7安装注意细节
    jupyter 指定特定的环境
    未来方向
    深度学习过拟合处理
    归一化
  • 原文地址:https://www.cnblogs.com/cloudrivers/p/11626911.html
Copyright © 2011-2022 走看看