Apache Jakarta(Tomcat)コネクタのロードバランシング機能でこれまで解決できなかったユースケースが1つあります。Apache Jakarta(Tomcat)特定のTomcatにトラフィックを転送するためのコネクタ
私は1つのApache Tomcat Connectorが接続された1つのIISサイトを持っています。要求されたURIに応じて、別のTomcatにトラフィックを「転送」する必要があります。特定のコンテキスト(例えば、/ app1、/ app2など)のアプリケーションしか持たない場合は、かなり簡単です。私の問題は、1つのアプリケーション(1つのTomcat)が/(ROOT)にあり、もう1つのアプリケーション(別のTomcat)が/ app1にあることです。
私は、uriworkermap.propertiesに以下の設定を試してみました:
/*=loadBalancer1
/app1/*=loadBalancer2
しかし、これは動作しません、「loadBalancer1は」すべてのトラフィックがかかるため。/app1/*が/ *(regexp wise)と一致するので、 "loadBalancer2"は無視されます。
私もそうとして除外を追加してみました:
/*=loadBalancer1
!/app1/*=loadBalancer1
/app1/*=loadBalancer2
しかし、それはどちらか動作しません、「loadBalancer1は」まだすべてのトラフィックを取って、ちょうど「/ APP1/*」URIことを無視しているので、パターン。 「loadBalancer2」は単に無視されます。
私は2つのIISサイトを持つことはできませんし、/(ROOT)にあるアプリケーションをTomcatの別のコンテキストパスに移動することはできません。
はあなたに
編集ありがとう: の代わりに一つだけのApache Tomcatコネクタを使用して、私は、同じIISサイト上の各Tomcatの1つのコネクタを使用しています。
uriworkermap.properties#1:/ APP1
/app1/*=wlb
コネクタ#1の意志でアプリをTomcatの:アプリをTomcatの
/*=wlb
!/app1/*=wlb
uriworkermap.proerties#2(ROOT)/ AT URI "/ app1/*"のトラフィックを無視しますが、コネクタ#2はそれをキャッチします(逆も同様です)。
今では、アプリに異なるVMオプションとメモリ割り当てを設定できます。
私はコメントや、よりよい解決策に開いています..あなたのような、それを逆にするとき
いいえ、動作しません。私はそれを試してみました。 regexp(これが使用している場合)がconfigファイル内の要素の順序よりも優先されているようです。つまり、同僚がおそらく解決策を見つけました。できるだけ早く投稿します。 – 1lln3ss