I have a kibana dashboard that has a large number of panels. When the page is loaded, all the panels result in queries being fired to the elasticsearch cluster. But it is very slow to load. What i noticed is that once 6 queries have been fired, all other queries are blocked/waiting to fire.
Once the result for one of the queries comes back, then another one is fired. Some of these queries are expensive, resulting in some long waiting times.
It will obviously be much better if most of the queries can be fired in parallel.
I am thinking of setting up a nginx proxy server with http 2.0. Kibana will connect to this and the proxy will pass on the request to the elasticsearch cluster.
Will this help? Is there any other approach? I am thinking of the proxy solution because nginx also allows for other conveniences like re-directing to https, caching on proxy, load balancing etc.