Awesome Open Source
Awesome Open Source

Amazon SQS Java Temporary Queue Client

The Temporary Queue Client lets you create lightweight, temporary queues that are deleted automatically when they are no longer in use. You can use the Temporary Queue Client for use in common messaging patterns such as Request-Response.

This library provides two complementary interfaces for two-way communication through queues:

  • The AmazonSQSRequester interface lets message producers send a message and wait for the corresponding response message.
  • The AmazonSQSResponder interface lets message consumers send response messages.

To implement this pattern efficiently, the AmazonSQSRequester client creates temporary queues that hold response messages. The temporary queue architecture scales to an arbitrary number of message producer runtimes. There is no risk of response messages being consumed by the wrong client.

Temporary queues are also automatically deleted if the clients that created them die ungracefully. By default, these internal queues are created with the queue name prefix __RequesterClientQueues__. You can configure this prefix when you build the requester client.

Getting Started

  1. Before you begin, register for an AWS account. For more information about creating an AWS account and retrieving your AWS credentials, see AWS Account and Credentials in the AWS SDK for Java Developer Guide.
  2. Sign in to the Amazon SQS console.
  3. To use the Temporary Queue client, you'll need Java 8 (or later) and Maven 3.
  4. Download the latest release or add a Maven dependency into your pom.xml file:
  1. Explore the code examples.
  2. Read the documentation.


  • Send us your feedback.
  • If you'd like to contribute a new feature or bug fix, we'd love to see Github pull requests from you!


This library is licensed under the Apache 2.0 License.

See LICENSE and NOTICE for more information.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
java (31,769
sqs (27
queues (18