私は tomcat 5.5 を使用して 100 以上のサイトにサービスを提供しています (my-gwt-site-1.com から my-gwt-site-100.com を想定)。
私のサイトはすべて、以前にデプロイされた gwt アプリケーションの単一のインスタンスを使用しています。それらの間の唯一の違いは、 server.xml の「ホスト」構成セクションにあります。
<Host name="my-gwt-site-1.com" appBase="webapps">
<Context path="" reloadable="true" docBase="/my-gwt-app/" debug="1"
unpackWARs="false" autoDeploy="false" xmlValidation="false" xmlNamespaceAware="false" crossContext="true">
<Resource name="jdbc/mysql/db_1" auth="Container" type="javax.sql.DataSource"
initialSize="2" maxActive="50" maxIdle="5"
maxWait="15000" removeAbandoned="true" removeAbandonedTimeout="2"
validationQuery="select now();"
username="root" password="pass" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/db_1"
/>
</Context>
&それは私のすべてのサイトに繰り返し適用されます...
<Host name="my-gwt-site-100.com" appBase="webapps">
<Context path="" reloadable="true" docBase="/my-gwt-app/" debug="1"
unpackWARs="false" autoDeploy="false" xmlValidation="false" xmlNamespaceAware="false" crossContext="true">
<Resource name="jdbc/mysql/db_100" auth="Container" type="javax.sql.DataSource"
initialSize="2" maxActive="50" maxIdle="5"
maxWait="15000" removeAbandoned="true" removeAbandonedTimeout="2"
validationQuery="select now();"
username="root" password="pass" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/db_100"
/>
</Context>
これを行う唯一の理由は、アプリケーションがドメインごとに個別のリソースを使用する必要があるためです。
server.xml の「host」セクションの数が 5 程度の場合は問題ありませんが、10 程度以上になると、Tomcat サーバーは正常に起動しますが、自分のサイトを読み込めません (クラッシュするようです)。バックグラウンドは静かに!)
server.xml に多くの「ホスト」タグを追加するのにこれが良い解決策か、それともこれを行うためのより良い方法があるか知りたいですか? すべてのサイトで個別のデータベースで 1 つのコードを使用したいだけであることに注意してください。
もう 1 つの質問は、1 つのサーバー (2 つの Quand Core CPU と 4GB の RAM) で通常いくつの Java サイト (それぞれ約 500 人のユーザーと低トラフィックのサイト) を実行できるかということです。