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.
- 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.
- Sign in to the Amazon SQS console.
- To use the Temporary Queue client, you'll need Java 8 (or later) and Maven 3.
- Download the latest release or add a Maven dependency into your
pom.xml
file:
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>amazon-sqs-java-temporary-queues-client</artifactId>
<version>2.0.1</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>amazon-sqs-java-temporary-queues-client</artifactId>
<version>1.2.4</version>
<type>jar</type>
</dependency>
- 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.