JSONオブジェクトから情報を引き出すJavaサーブレットがあります。JSONオブジェクトは、インデックス付きデータからの検索結果で構成されます(エラスティック検索)。これは、結果が少ない場合はうまく機能しますが、結果が多い場合は大幅に遅くなります。結果の数が50,000を超える場合、ブラウザがクラッシュすることがあります。ブラウザがクラッシュしないように、多数の結果をより効率的に処理するために何ができるでしょうか。
これが私のコードです:
//Result Count
int i = 1;
for (SearchHit sh : response.getHits().hits()) {
out.println("Result " + i + " <br>");
out.println(" " + sh.getSource().get("@message").toString() + " <br>");
HashMap hm = (HashMap) sh.getSource().get("@fields");
Iterator it = hm.entrySet().iterator();
while (it.hasNext()) {
Map.Entry pairs = (Map.Entry)it.next();
out.println(" " + pairs.getKey() + " = " + pairs.getValue().toString().replace("[", "").replace("]", "") + " <br>");
}
i++;
out.println(" <br>");
}