アプレット、サーブレット通信を使用して大規模なデータを処理する問題

StackOverflow https://stackoverflow.com/questions/3017826

質問

私は、サーブレットへの要求を行うアプレットを持っています。サーブレット上では、アプレットへの応答の背中を書くためにPrintWriterを使用しています:

out.println("Field1|Field2|Field3|Field4|Field5......|Field10");
out.printlnを()が15000回程度実行されますので、

、15000のレコードに関するがあります。

問題は、アプレットは、サーブレットからの応答を取得する場合、それはレコードを処理するために約15分かかるということです。 私がするSystem.out.printlnのを配置し、処理は5000の周りで一時停止され、その後、15分後には、処理を継続し、その後、その行われます。

誰もが同様の問題に直面していますか?サーブレットが実行に2秒程度かかります。だから、ブラウザ/アプレットがレコードを処理するには遅すぎると思われます。

これは、アプレットコードです。時にはそれだけで最初のSystem.outに停止し、時には二のSystem.outに停止します。

while ((line = in.readLine()) != null) {
    System.out.println("Reading from stream....");
    datavector.add(line);
    System.out.println("Vector size="+datavector.size()+"  Line added="+line);
}

すべてのアイデアは感謝ます。

感謝します。

役に立ちましたか?

解決

あなたは「5000のレコードの周りに一時停止されて、処理した後、15後に自力で起動する」に関連する質問ですか?またはそれはあなたのアプレットを遅くされて処理されます。

あなたは、コード、いくつかのコードスニペットを投稿する場合は、

はそれが参考になりますか?

他のヒント

System.out.println()ループからwhileの行を削除します。あなた30,000回System.out.println()を呼び出すsaldoごとです。これは、オーバーヘッドの非常にを追加します。ちょうどあなたがしたい場合whileループの前後1つずつを配置します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top