【初心者】Java質問・相談スレッド102【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0571デフォルトの名無しさん
2007/06/17(日) 00:50:24作成したのですが、WindowsとLinuxで速度が異様に異なります。
プログラムはこんな感じのものです。
※関連ありそうな部分だけ抜き出しています
while(継続条件){
URL stockURL = new URL("http://アドレス");
in = new BufferedReader(new InputStreamReader(stockURL.openStream(),"EUC_JP"));
while ((line = in.readLine()) != null) {
//処理
}
in.close();
}
このようなイメージのプログラムをスレッドで100個同時起動しているのですが、
Windowsだと2時間くらいで終わる処理がLinuxで実行すると1時間で5%くらいしか
完了していませんでした。
Linuxのシステムモニタを見ると、通信がある程度行われると全く行われない
状態が数分続き、その後にまた通信しているようなイメージに見えました。
※通信していない間はCPU使用率も落ちる。
Linuxのシステムモニタとログを出力した際にURLオブジェクト生成のあたりで
止まっていたりするので、通信系だと思うのですが何か原因がわかる方いましたら
ご教示願えませんでしょうか。
プログラムよりもLinuxの設定なのかもしれませんが・・・。
よろしくお願いします
■ このスレッドは過去ログ倉庫に格納されています