2016-11-24 3 views
1

したがって、this questionによると、スプリングコントローラはシングルトンであり、ウェブアプリケーションごとに1つあります。同じコントローラに複数のユーザーが接続していて、そのうちの1人が長時間の作業を開始すると、コントローラがロックされるまで他のユーザーがブロックされることになります。私は何かを欠いているに違いない。どうも。Spring MVCコントローラをブロックしていますか?

答えて

1

スプリングControllerは、シングル・スコープのBeanであり、Springアプリケーション・コンテキストごとに1つしか存在しないことを意味します。だから、by natureシングルトンのようなシングルトンデザインパターン開発クラスではなく、by-virtueとSpringフレームワークの保証です。

説明しているのは、Controllerの方法で発生する1つの要求だけを通過させることができる仮想同期のように思えますが、Controllerの方法は確かに​​ではないためです。

リクエストが遅くなるのは、Webコンテナの最大要求スレッド(デフォルトではTomcatで正しく記憶されている場合は100)、ネットワーク遅延またはリソース消費の遅延(DB)などです。

+0

清澄化のためのThx。どういうわけか、オブジェクトが複数のスレッドによって使用されている場合、そのオブジェクトへのアクセスをどうにかして制御する必要があるという考えがありました。しかし、ステートレスなオブジェクトは数えません。 –

関連する問題