title: AWS SQS - Relationship between number of queue consumers and the number of in-flight messages
body: <p>I've a standard AWS SQS queue and have multiple EC2 instances(~2K) actively polling that queue in an interval of 2 seconds.
  I'm using the AWS Java SDK to poll the queue and using the <code>ReceiveMessageRequest</code> with a single message in response for each request. </p>
  
  <p>My expectation is that the <strong>number of in flight messages</strong> that shown in the SQS console is the number of messages received by the consumers and not yet deleted from queue(i.e it is the number of active messages under process in an instant). But The problem is that the Number of in flight messages is very much less than the number of consumers I've at an instant. As I mentioned I've ~2K consumers but I only see In-flight messages count in aprox. 300-600 range.</p>
  
  <p>Is my assumption is wrong that the in-flight messages is equal to the number of messages currently under process. Also is there any limitation in the SQS/ EC2 or the SQS Java SDK that limits the number of messages that can be processed in an instant?</p>