0

私たちのラボには、外部からの http 接続に対して開いているマシンが 1 台あります。ただし、このマシンは非常に弱いです (メモリが少なく、CPU が遅い)。はるかに強力なマシンが他にもありますが、それらはファイアウォールの背後にあり、ラボの外からはアクセスできません。

サーバーが非常に要求の厳しいGWTアプリを作成しています。サーバーを強力なコンピューターにインストールし、クライアントを弱いコンピューターにインストールして、それらを RPC を使用して接続することは可能ですか? web.xml ファイルを変更する必要があると思いますが、具体的にはどうすればよいのでしょうか?

理論的には、要求の厳しい部分を別の TCP/IP サーバーにラップして、GWT サーバーに接続させることができますが、GWT で直接行うことが可能かどうかを知りたいです。

4

3 に答える 3

1

私はこれを試みましたが、GWT プロジェクトを Eclipse プロジェクトとして 3 つの部分 (クライアント、RPC、サーバー) に分割することにしか成功しませんでした。最終的には 1 つの大きな WAR ファイルになり、それが 1 か所にデプロイされます (他の誰かが実際にコードを分離することに成功した場合を除きます)。

あなたができる解決策は、すべてのサーバー側の処理を行う別のサーバー (強力なマシン) をセットアップし、GWT サーブレットをプロキシのように動作させることです。クライアントからの要求を受け入れ、データを別のサーバーに転送して処理します。その後、応答を待ちます。

やり方はあなた次第です。Web サービス、直接ソケット接続、JMS などを使用できます。

于 2012-06-28T10:25:16.300 に答える
1

セットアップによって異なります。

GWT ACRIS-このリンクを参照してください

EJB - ビジネス オブジェクトを EJB としてリモート マシンに保持し、RMI/JNDI を介してそれらにアクセスするサーブレットを維持することも 1 つの方法です。

Spring - もう 1 つの簡単な方法は、Spring Remoting を使用することです。このリンクを参照してください

于 2012-06-28T13:52:05.670 に答える
1

GWT クライアントはサーバーからダウンロードされ、Web ブラウザー内で JavaScript コードとして実行されます。GWT アプリのどの部分を別のサーバーで実行したいのかよくわかりません。

GWT サーブレット (RPC サービスの実装) がデータベースや Web サービスなどの外部リソースにアクセスしている場合、それらのリソースを別のサーバーに移動できます。

別のオプションは、特定の要求をファイアウォールの背後にあるより強力なサーバーに転送する「弱い」サーバーにリバース プロキシをインストールすることです。プロキシは、「弱い」サーバー (mod_proxy を使用) 上の Apache (httpd) によって実行できます。そうすれば、Tomcat はより強力なマシンにインストールするだけでよく、ほとんどの処理を引き受けてくれます。

于 2012-06-28T16:27:29.257 に答える