Gaurav Mantri's Personal Blog.

Comparing Windows Azure Queue Service and Amazon Simple Queue Service–Summary

Over the past few weeks, I have been writing a detailed blog post comparing Windows Azure Queue Service and Amazon Simple Queue Service. You can read that post here: https://gauravmantri.com/2012/03/27/comparing-windows-azure-queue-service-and-amazon-simple-queue-service/. This post turned out to be rather big as there was so much to cover so I thought why not summarize that post in a smaller one and hence this post.

Like the other post, for the sake of brevity we’re going to refer Windows Azure Queue Service as WAQS and Amazon Simple Queue Service as ASQS in the rest of this blog post as well.

Following table provides a comparison summary of features in WAQS and ASQS.

  WAQS ASQS
Current service version 2011-08-18 2011-10-01
Ability to create queues Yes Yes
Minimum/Maximum length of queue name 3/63 1/80
Queue name case sensitivity Lowercase only Mixed case
Valid characters Alphanumeric, and Dash (-) Alphanumeric, Dash (-) and Hyphen (_)
Specify custom metadata while creating queue Yes No
Specify settings for system attributes while creating queue No Yes
Ability to list queues Yes Yes
Supports specifying “prefix” to fetch partial list of queues Yes Yes
Maximum records returned per call 5000 1000
Optionally return metadata Yes No
Ability to limit the result size Yes No
Concept of continuation token to fetch next set of queues Yes No
Ability to delete a queue Yes Yes
Ability to fetch custom metadata for a queue Yes No
Ability to fetch system attributes for a queue No Yes
Ability to set custom metadata for a queue Yes No
Ability to set system attributes for a queue No Yes
Programmatically get URL for a queue No Yes
Ability to create message Yes Yes
Maximum size of a message 64KB 64KB
Ability to make message invisible immediately after creation Yes Yes
Maximum age of a message in a queue before it is automatically deleted by the system 7 Days 4 Days
Maximum value for a visibility timeout for a message in a queue at the time of creation 7 Days 15 Minutes
Ability to create messages in bulk (batch) No Yes
Maximum number of messages which can be created in a batch N/A 10
Ability to fetch messages and making them invisible to other callers for some time Yes Yes
Maximum number messages which can be fetched in a single call to the service 32 10
Maximum value for a visibility timeout for a message when fetching the messages 7 Days 12 Hours
Ability to fetch messages but not altering their visibility Yes No
Ability to delete a message Yes Yes
Ability to delete messages in bulk (batch) No Yes
Ability to update content of a message Yes No
Ability to update visibility timeout of a message Yes Yes
Ability to update visibility timeout of messages in bulk (batch) No Yes
Maximum number of messages for which visibility timeout can be changed in bulk (batch) N/A 10
Ability to clear a queue i.e. delete all messages while preserving queue Yes No
Ability to grant permissions to other user on a queue No Yes
Ability to revoke permission on a queue No Yes

I hope you will find it useful.


[This is the latest product I'm working on]