2つの主な欠点があります。
負荷が均等に分散されていません。スティッキーセッションは固定されるため、名前が付けられます。最初のリクエストは均等に配信されますが、かなりの数のユーザーが他のユーザーよりも多くの時間を費やすことになります。これらすべてが最初に単一のサーバーに設定されている場合、そのサーバーの負荷ははるかに大きくなります。通常、これは実際には大きな影響を与えることはなく、クラスター内のサーバーを増やすことで緩和できます。
プロキシはユーザーを単一のIPに統合し、そのすべてが単一のサーバーに送信されます。通常は害はありませんが、ここでも個々のサーバーの負荷を増やす以外に、プロキシはクラスタ内でも動作できます。このようなシステムからF5へのリクエストは、リクエストがプロキシクラスター内の別のプロキシサーバーから送信された場合、必ずしも同じサーバーに返されるとは限りません。
AOLはある時点でプロキシクラスターを使用していましたが、実際にはロードバランサーとスティッキーセッションを使用していました。ほとんどのロードバランサは、Cクラスのネット範囲に基づいたスティッキーセッションを提供します。F5の場合、Web要求Cookieにエンドノードを保存するCookieベースのスティッキーセッションを提供します。
Cookieベースのセッションは機能するはずですが、私はそれらにいくつかの問題があり、通常はIPベースのセッションを選択します。しかし、私は主に内部アプリに取り組んでいます-DMZマイレージは異なる場合があります。
述べられていることはすべて、スティッキーセッションとIn-Procセッションを使用してF5を実行しているサイトで大きな成功を収めました。
また、MemcachedやVelocityなどのメモリ分散キャッシュシステムの1つを調べて、SQLまたはout of procメモリサービスに保存されているセッションの代替手段を調べることもできます。複数のサーバーで実行できるため、インプロセスメモリの速度に近づきます。