We intend to deploy our news-handling service which will pull news from AWS SQS queue provided by RDP (called "alerts delivery" by the "News Service on Refinitiv Data Platform - User and Design Guide", v2.0 document).
For durability, we will have two instances (nodes) of this service deployed.
Furthermore, we have two deployments — production and staging, — and our staging deployment must be continuously available as per our internal requirements, so we intend to have four concurrently working instances of our news-handling service deployed.
Please also note that the staging and production deployments are completely separated and do not "know" about each other, so they cannot use the single SQS queue to fetch news as in this case it would be impossible to synchronize reading of the same news updates from the queue, and deleting them from it.
Hence, we have to use at least two SQS queues — one for the staging deployment and one for the production, — or four of them: with each of the two nodes in each deployment using its own queue.
Please advise us on the following questions:
- Is it possible to use concurrently two or more SQS queues with exactly the same subscription filter? If yes, will they all receive the same alerts? Will they work completely independently of each other? What is the system-imposed limit on the number of SQS queues (or, put it another way, can we have two or four queues)? Are there any session quota limits related to OAuth2 authentication/authorization grants?
- What do you think would be the best architectural approach to implement durability within our concept of the two identical nodes fetching the same news? Would it be better for the nodes to access separate SQS queues or each pair should share a single one?