5

リクエストの処理の開始時に開始し、後で必要になったときに結果を取得したい、最大 100 ミリ秒続くタスクがあります。この量だけすべてのリクエストをブロックして延長したくありません。

バニラ Java アプリでは、 を作成し、を使用してExecutorService実行し、後で結果を取得します。Callable<T>Future<T>

Tomcat は独自のスレッド プールを維持しているので、それと調整しようとする必要がありますか? つまり、私の ExecutorService プールは Tomcat のスレッドと競合していますか? これは問題ですか?どうにかして Tomcat のプールにピギーバックする利点はありますか?

同じような経験をお持ちの方からのアドバイスは大変助かります。また、現時点では、Spring などの依存関係を追加することに興味はありません。

4

1 に答える 1

4

私はそれと調整しようとする必要がありますか?

いいえ、Tomcat プールは Tomcat 専用です

つまり、私の ExecutorService プールは Tomcat のスレッドと競合していますか?

全くない。それはあなたのプールです。

これは問題ですか?どうにかして Tomcat のプールにピギーバックする利点はありますか?

何百万ものスレッドが生成されない限り、カスタム アプリケーション プールを維持することに問題はありません。Tomcat シャットダウン スクリプトが「Tomcat を停止できません」と文句を言わないように、スレッドにデーモンステータスを提供するようにしてください。

于 2013-07-12T21:26:46.307 に答える