いつも同じような状況が続き、32ビットのアプリケーション(TomcatベースのJ2EEアプリケーション)を64ビットマシンに移動しようとしました。あなたは直面しているように結果を観察します。
ところで、64ビットOSに移行した理由については言及していません。
はのは1
がここでの問題を作成して、余分なCPU /メモリーを取る64の環境で32ビットアプリケーションを実行しているんでご質問の1を見てみましょう。
一般的にはい。しかしそれはあなたのプロセッサアーキテクチャにも依存します。これを理解するには、Windowsが32ビットアプリケーションを64ビットマシンで実行する方法を見てください。 はWoW64(Windows 32-bit on Windows 64-bit)と呼ばれる64ビットのOS内のサブシステムは、
は主に
はWoW64はそれ
は、32ビット命令をエミュレートし、2つの方法がありますがあります。このは計算上非常に高価ですとおそらくCPU使用率スパイクの原因です。これは、一般にIntel Itanium(IA-64)ベースのプロセッサで使用される場合です。
プロセッサを64ビットモードから32ビットモードに切り替える。ここで、32ビットのアプリケーションスレッドを実行する必要があるときはいつでも、プロセッサはをに32モード(互換モード)に切り替え、64ビットモードに戻します。これは、以前のエミュレーションメカニズムよりも比較的高速です。
ウィン2003とのWin 2008
の性能差は、これは非常に主観的であるあります。使用するハードウェアの種類によって異なります。たとえあなたが64ビットのOSとハードウェアを持っていても、ハードウェア、マザーボードのCPUなどの種類に大きく依存します。64ビットOSは、アドレッシングスペースなどの制限によって32ビットOSとマシンができない優れたハードウェアを活用するように設計されています。 。
んWindows 2008のための64ビット環境では、より多くのCPUは、2003年
はいと比較が必要です。上記の@EJPのように、more things to offerです。より優れたOSには優れたハードウェアが必要です。特定のアプリケーションにWin 2008固有の機能が必要な場合とそうでない場合があります。これは、32ビットから64ビットに移行する必要がある理由を呼び出す必要がある理由です。同じフォーラムにsimilar postさんと載っています。
私はオプションがあるかどうかわかりませんが、(プラットフォーム固有のライブラリを使用していない場合は)run the same code without rebuildingを64ビットTomcatで実行できます。
記号が欠落しているにもかかわらず、私は64ビットシステムがより多くのリソースを浪費しているため、より多くのメモリを最初に試してみます。 Javaバイトコードは32ビットと64ビットで同じなので、64ビットJavaでTomCat 7、64ビットを試すことができます。 –
メモリを追加しても影響はありませんが、CPUを追加するとパフォーマンスに影響があります。混乱の状態で。私は、2008年がより多くのリソースを必要とし、リソースを増やすという事実を活用して、最適化またはライブするためにアプリケーションに焦点を当てるべきです。 2008年のWindows 2008の最適化またはTomcatの最適化に焦点を当てることはオプションですか? はいの場合は、どこでそれに対して鉛を得ることができますか? –