Amazon Simple Queue Service

From Wikipedia, the free encyclopedia

Jump to: navigation, search

Amazon Simple Queue Service (Amazon SQS) is a distributed queue messaging service introduced by Amazon.com in April of 2006. It supports programmatic sending of messages via web service applications as a way to communicate over the internet. The intent of SQS is to provide a highly scalable hosted message queue that resolves issues arising from the common producer-consumer problem or connectivity between producer and consumer.

Amazon SQS can be described as commoditization of the messaging service. Well-known examples of messaging service technologies include Java Message Service and Microsoft Message Queuing. Whereas with Java Message Service, for instance, users would have to maintain their own server, Amazon SQS does it for them and sells the service at a per-use rate.

Expected message latency, as of 2007, was 2-10 seconds.

Price, as of 2008, was $0.01 USD per 10,000 messages sent plus bandwidth surcharge if bandwidth usage is significant.

Contents

[hide]

[edit] Authentication

Amazon SQS provides authentication procedures to allow for secure handling of data. Amazon uses it's Amazon Web Services (AWS) identification to do this, requiring users to have an AWS enabled account with Amazon.com; this can be created at http://aws.amazon.com. AWS assigns a pair of related identifiers, your AWS access keys, to an AWS enabled account to perform identification. The first identifier is a public 20-character Access Key. This key is included in an AWS service request to identify the user. If the user is not using SOAP (protocol) with WS-Security, a digital signature is calculated using the Secrete Access Key. The Secrete Access Key is a 40-character private identifier. AWS uses the Access Key ID provided in a service request to look up an account's Secrete Access Key. Amazon.com then calculates a digital signature with the key. If they match then the user is considered authentic, if not then the authentication fails and the request is not processed.

[edit] Message Delivery

Amazon SQS garantees At-Least-Once deliver. Messages are stored on multiple servers for redundancy and to ensure availability. If a message is delivered while a server is not available it may not be removed from that server's queue and may get resent. As of 2007, Amazon SQS does NOT guarantee reception of messages by the recipient in the order they were sent by the sender. If message ordering is important it is required that the application place sequencing information within the messages to allow for reordering after delivery. Messages can be of any type, and the data contained within is not restricted. The only regulation is that messages are maxed at 8 kilobytes. If a message is larger than that the user has a few options to get around this problem. The message can be split into multiple messages and sent in pieces or the message can be stored using Amazon Simple Storage Service (Amazon S3) or Amazon SimpleDB and the message will contain a pointer to the information. The service supports both unlimited queues and messaging.

[edit] Message Deletion

SQS does not automatically delete messages once they are sent. When a message is delivered a receipt handle is generated for that delivery and sent to the recipient. These receipts are not sent with the message but in addition to it. They are required to delete the message from the queue. This feature is new as of 2008 where only the message ID was required for message deletion. Because of the systems distributed nature, a message may be sent more than once. In this case the most recent receipt handle is needed to delete the message. It should be noted that amazon reserves the right to delete an entire queue without notification if it has not been accessed for 30 consecutive days. There is a Visibility timeout placed on messages once they are delivered to prevent other components from consuming already delivered. The "clock" for the visibility timeout starts once a message is sent, the default time being 30's. If the queue is not told to delete the message, using the receipt handle, before the timeout is over, the message becomes visible again and able to be resent. SQS automatically delete messages residing in queue's for longer than 4 days.

[edit] See also

[edit] References

[edit] External links

::...
免责声明:
当前网页内容, 由 大妈 ZoomQuiet 使用工具: ScrapBook :: Firefox Extension 人工从互联网中收集并分享;
内容版权归原作者所有;
本人对内容的有效性/合法性不承担任何强制性责任.
若有不妥, 欢迎评注提醒:

或是邮件反馈可也:
askdama[AT]googlegroups.com


点击注册~> 获得 100$ 体验券: DigitalOcean Referral Badge

订阅 substack 体验古早写作:


关注公众号, 持续获得相关各种嗯哼:
zoomquiet


自怼圈/年番新

DU21.7

关于 ~ DebugUself with DAMA ;-)
粤ICP备18025058号-1
公安备案号: 44049002000656 ...::