Q: AWS Elasticsearch scale up I'm using AWS Elasticsearch Service and I'm getting a lot of es_rejected_execution_exception.
According to their docs we should improve index performance on our application, add more nodes or switch to a larger instance type.
If I exhausted improving my application, which one is better, to add more nodes or to switch to a large instance type?

A: First and most important thing is that, es_rejected_execution_exception is a generic exception for all threadpools in ES and whenever their queue capacity exceeds this exception is thrown and AWS docs gave the example of bulk queue which is mentioned under short desc as es_rejected_execution_exception[bulk] note bulk after the exception.
Please beware that there are many threadpools in ES but most important and heavily used ones are search and write(in latest versions bulk calls also uses write queue) and you need to carefully look at the exception messages to see which queue is getting exhausted so that you know what you need to optimize.
Increasing queue size is controversial topic but if you have a momentary burst of requests than you can increase the queue size, which is again not possible in AWS ES :(
You can always increase the hardware but you should find the root cause, fix them and optimise your index and search operations so that it uses less hardware and saves $$$ , please refer to my short tips to improve search and index performance
