3

ロード バランサーを介して開始され、最も重みの少ない Tomcat サーバーにルーティングされて処理されるクライアント リクエストがあります。

クライアントがターゲットの Tomcat サーバーにヒットすると、クライアントへの応答には、2 番目の要求に使用される絶対 URL が含まれます。これにより、ロード バランサーが実質的に排除され、クライアント セッションの存続期間中、クライアントが Tomcat インスタンスと直接通信できるようになります。

問題: 問題は、ロード バランサを介した最初のリクエストが SESSION を作成し、次に Tomcat への 2 番目のリクエストが 1 つのクライアントに対して 2 番目の SESSION を直接作成することです。最初の SESSION は未使用であり、最終的に期限切れになります。

質問: 2 番目のリクエストでクライアントを接続し、最初のリクエストで作成された SESSION に (ロード バランサーを介して) 戻すにはどうすればよいですか?

更新: JMeter でこれをテストしましたが、セッションを接続できませんでした。

リクエスト 1:

http://loadbalancer:80/page1.jsp

応答ヘッダー:

Set-Cookie: JSESSIONID=070894D435A46DF60AFE506018018325; Path=/

次に、2 番目の要求は次のとおりです。

http://directTomcat:8080/page2.jsp?token1=123&token2=xyz;JSESSIONID=070894D435A46DF60AFE506018018325

[no cookies]

2 番目の応答ヘッダー:

Set-Cookie: JSESSIONID=1081A016CBA9B3AA7E7C38EF775C04F7; Path=/

私も試しました:

http://directTomcat:8080/page2.jsp?token1=123&token2=xyz&JSESSIONID=070894D435A46DF60AFE506018018325

しかし、それもうまくいきませんでした。

2 番目の要求を行う前に、クライアントで JSESSIONID を Cookie として設定する必要がありますか?

4

0 に答える 0