1

2 つの tomcat (tomcat1 と tomcat2) の JSESSIONID Cookie のスティッキー セッションを使用して ELB を構成しました (フローは - Apache Http サーバー - ELB - tomcats)。

ポート 8009 の AJP プロトコルが Tomcat 側で構成されています。AWS ELB には AJP オプションがなく、tcp:8009 で構成されています。

したがって、Apache httpd.conf エントリは、(xxx.amazonaws.com は ELB 名です)

BalancerMember ajp://xxx.amazonaws.com:8009

どういうわけかスティッキー セッションが機能せず、http 要求が両方の tomcat サーバーに送信されます。ELB側のプロトコル(tcp:8009)のせいでしょうか?ここに何が欠けているのかわかりません。助けが必要です!!

4

1 に答える 1

0

TCP に変更すると、スティッキー セッションが失われます。これは ELB の制限です。プロトコルを HTTP に切り替えることで回避できる場合がありますが、80 以外の別のポートを使用します。

私が間違っていない限り、ELB の代わりに HA Proxy などをセットアップする必要があるかもしれません。TCP とスティッキーの両方を実行できるもの。

websockets+sticky が amazon で動作しないことはよく知られています。

https://forums.aws.amazon.com/thread.jspa?messageID=627367

于 2015-06-24T06:46:59.463 に答える