A Job Queue represents an Amazon SQS queue. Amazon Simple Queue Service (SQS) allows you to host a pull-based message queue for services in your distributed systems to poll for messages. These queues are used in a serverless architecture to provide resilient, scalable messaging.
Key Features of Amazon SQS include:
- Fully managed by AWS
- Cost-effective scaling on demand
- Uses server side encryption (SSE) to encrypt all your data
A Job Queue differs from a Topic, in the way that the consuming resource receives a message. A Job Queue requires their consumer resources to poll or "pull" messages from a queue, where as a Topic "pushes" messages instantaneously to subscribed consumer resources.
Event subscription wires (solid line) connect two or more resources and are required to accomplish certain tasks or improve performance within an application's flow.
The following resources can be subscribed to a Job Queue:
Service discovery wires (dashed line) provide compute resources (Function, Edge Function, Docker Task) with the permissions and environment variables required to perform actions using cloud resources within the stack. This resource is can be on the receiving end of a service discovery wire originating from compute resources.
The following compute resources can use a service discovery wire to access a Job Queue resource:
Human readable name for this resource that is displayed on the Stackery Dashboard and Stackery CLI output.
Use Existing SQS Queue
When enabled, this feature provides you with a field to specify the Amazon Resource Name (ARN) of an existing SQS Queue to reference in your application.
When connected by a service discovery wire (dashed wire), a Function or Docker Task will add the following IAM statement/policy to its role and gain permission to access this resource.
Grants a Function or Docker Task permission to send messages to your Job Queue in the stack, or an existing SQS Queue outside of the current stack.
When connected by a service discovery wire (dashed wire), a Function or Docker Task will automatically populate and reference the following environment variables in order to interact with this resource.
The Logical ID of the Queue resource.
The Amazon Resource Name of your Queue.
The URL of your Queue.
Related AWS Documentation
AWS Documentation: AWS::SQS::Queue