### Description

The health API response can become a few MBs (2-3MB if 50K indices are affected).

In less extreme situations the response can be in the 10s/100s of KB. 

It might be worthwhile looking into chunking its response (this might provide clients with a better experience too)
server/src/main/java/org/elasticsearch/health/RestGetHealthAction.java
private static final String VERBOSE_PARAM = "verbose";
    @Override
    public String getName() {
        
        return "health_action";
    }
    @Override
    public List<Route> routes() {
        return List.of(new Route(GET, "/_internal/_health"), new Route(GET, "/_internal/_health/{indicator}"));
    }
    @Override
    protected RestChannelConsumer prepareRequest(RestRequest request, NodeClient client) throws IOException {
        String indicatorName = request.param("indicator");
        boolean verbose = request.paramAsBoolean(VERBOSE_PARAM, true);
        GetHealthAction.Request getHealthRequest = new GetHealthAction.Request(indicatorName, verbose);
        return channel -> client.execute(GetHealthAction.INSTANCE, getHealthRequest, new RestToXContentListener<>(channel));
    }
}