sharing SQS across multiple environments
<p>We're exploring SQS to improve the reliability of some asynchronous job queues. I'm trying to identify the best SQS deployment strategy to support multiple queues and environments (farm clusters, developer sandboxes, developer laptops, etc.). Our previous job queue used a separate queue server for each environment which provided for nice isolation. Since SQS is a global resource I don't quite yet see the optimal path for security/isolation and maintenance.</p>

<p>In the worse case I think we'd need to create thousands of individual SQS queues to handle each combination of job type (e.g. reports, ETL, etc.) and environment (production, demo, developer sandboxes, etc.). We could use a single queue per environment but that seems to limit our ability to control behavior based on the job. Conversely we could use global queues for each job but that makes it impossible to isolate the environments.</p>

<p>This seems like a bit of a maintenance and security burden so I'm wondering how other customers have successfully leverages SQS across a large set of environments and queue payload types.</p>