### 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/HealthIndicatorResult.java
import org.elasticsearch.xcontent.ToXContentObject;
import org.elasticsearch.xcontent.XContentBuilder;
import java.io.IOException;
import java.util.List;
public record HealthIndicatorResult(
    String name,
    HealthStatus status,
    String symptom,
    HealthIndicatorDetails details,
    List<HealthIndicatorImpact> impacts,
    List<Diagnosis> diagnosisList
) implements ToXContentObject {
    @Override
    public XContentBuilder toXContent(XContentBuilder builder, Params params) throws IOException {
        builder.startObject();
        builder.field("status", status.xContentValue());
        builder.field("symptom", symptom);
        if (details != null && HealthIndicatorDetails.EMPTY.equals(details) == false) {
            builder.field("details", details, params);
        }
        if (impacts != null && impacts.isEmpty() == false) {
            builder.field("impacts", impacts);
        }
        if (diagnosisList != null && diagnosisList.isEmpty() == false) {
            builder.field("diagnosis", diagnosisList);
        }
        return builder.endObject();
    }
}