0

Solaris上で実行されているJavaアプリケーションがあり、Oracleに接続し、データベースで実行する作業をチェックします。これは問題なく実行されます。スタンドアロンのFedoraシステムで同じコードを実行してみましたが、パフォーマンスも良好です。ただし、Fedora VMWare仮想マシン上のホームに移動すると、アプリケーションがデータベースに接続するまでに5分以上かかる場合があります。それは最終的に接続を確立します-それはただカタツムリが遅いです。どこかで構成の問題だと思われますが、見つかりません。私たちが知る限り、2つのFedoraボックスの構成はほぼ同じです。誰かが以前にこの問題に遭遇したことがありますか?もしそうなら、どのようにそれを回避しましたか?

よろしくお願いします。マイク・プレストン

4

2 に答える 2

1

それを見つけた!Solarisで実行している場合、32ビット拡張機能を備えた32ビットJVMを実行しています。Kornシェルスクリプトを使用して実行しており、64ビット処理を強制するために-d64フラグが追加されています。Linuxボックスでは、シェルスクリプトから-d64フラグを削除したので、みんな満足しています。あなたの考えと援助をアレックスに感謝します。

于 2012-07-24T18:49:06.007 に答える
1

これが問題を解決した解決策です...私たちのヘッドレス開発サーバーは、エントロピープールを満たすためにキーボードアクティビティをたまにしか取得していませんでした(記事を読んでください-ここでは説明しません)そして私はそれがまでブロックされていたと思います必要な乱数を生成するのに十分な「ノイズ」がありました。システムで作業している開発者は他に1人だけなので、バッファーがいっぱいになるまでに数分かかる場合があります。バッファがいっぱいになると、先に進み、期待どおりに接続を実行しました。それはまた、私たちが時々鮮明なパフォーマンスに続いて遅いのを見る理由を説明します。簡単に言うと、Javaの呼び出しとjarファイル名の間にあるKornシェルスクリプトに文字列「-Djava.security.egd = file:/// dev / urandom」を追加したところ、チャンピオンのように機能するようになりました。完全なコマンド文字列は次のとおりです。

/ usr / bin / java -Xms64m -Xmx1024m -Djava.security.egd = file:/// dev / urandom -jar $ 1 $ 2 $ PID

記事を読んだ場合は、必ず以下のコメントを読んでください。それらの1つは本当に面白いです!

于 2012-07-25T19:30:20.817 に答える