スケーラブルなJavaアプリケーションで接続プールの問題を解決する方法が不思議です。スケーラブルなJava Webアプリケーションでの接続プール
私はHikariCPとJava Webアプリケーションを設定(最大プールサイズは20)とPosgtreSQL最大許可された接続100
とそして今、私は私のWebアプリ(どんなに)のスケーラビリティのアプローチを実装する必要があり想像オートスケーリングでも終了します。だから、最終的にどれくらいのWebアプリケーションの複製があるか分からず、(クラスタワークロードなどの理由で)動的に変更される可能性があります。
しかし、問題があります。 5つ以上のWebアプリケーションレプリカを作成すると、合計接続数が最大許容接続数を超えます。
この問題を解決するベストプラクティスはありますか(許容最大接続数が増えているかプールサイズが減っていることは明白です)。
ありがとうございます。
ボトルネックがどこにあるかを測定する必要があります。マシンあたり20個の接続が多すぎるのでしょうか? PosgtreSQLへの100以上の接続を開くことができますか?たぶんあなたはバッファ(キュー)を持っているべきですし、リクエストを抑制するためにキューに更新クエリを提出し、おそらくあなたはスケーラビリティの異なる別のテクノロジを必要とします。 – alfasin
@alfasin良い点は、今のところ私は可能なオプションを研究しています。また、スケーラブルなアプリケーションで接続プールを構成するためのベストプラクティスがあるのだろうかと思います。 –
データベースを複製していますが、これで心配はありませんか?私はwebappごとに別々のdbを意味するわけではありませんが、スケーリング時にボトルネックになるでしょう。 – Kayaman