SQS is a poll-based service but we have to distinguish
short polling returns immediately, while Long polling awaits for messages to arrive therefore reducing number of API costs and lowering costs.
SQS is an highly available, high throughput service, and you normally have to worry about scalability, but there are some limitations in terms of message size and inflight messages ( 120,000 for standard queue, or 20,000 FIFO).
To avoid hitting these limits it could be advisable to add more queues (and send messages to different queues based on their parameters)