リクエストバッチ

複数のリクエストを組み合わせてネットワークを最適に利用

問題点

少量のデータを使ってクラスターノードに大量のリクエストを送信すると、ネットワーク遅延とリクエスト処理時間(サーバー側のリクエストシリアライズとデシリアライズを含む)によってかなりのオーバーヘッドが発生する可能性があります。

たとえば、容量1gbpsのネットワークで、遅延とリクエスト処理時間が100マイクロ秒で、クライアントが同時に数百のリクエストを送信している場合、各リクエストがわずか数バイトであっても、全体的なスループットは大幅に制限されます。

解決策

リクエストを 1 つのバッチリクエストにまとめてください。バッチリクエストは処理のためにクラスターノードに送信され、各リクエストは個々のリクエストと同じように処理されます。ノードはリクエストのバッチで応答します。

詳細については、oreilly.com のオンライン書籍の第 31 章を参照してください。

このパターンは 分散システムのパターンの一部です。

2023 年 11 月 23 日