通常、ビジネス/dao レイヤーにはシングルトン インスタンスを使用します。EJB の場合にステートレス セッション Bean をプールする理由は何ですか?
2 に答える
3
名前の「ステートレス」は、セッションの会話状態、つまり Bean の呼び出し間で持続し、セッションの間保持される状態を指します。ただし、ステートレス セッション Bean は引き続きインスタンス変数を持つことができます。これらのインスタンス変数は、会話状態に関連するべきではありませんが、クライアント間で「共有」されます。
つまり、ステートレス セッション Bean はスレッド セーフであるとは限りません。
その結果、コンテナーは、ステートレス セッション Bean の特定のインスタンスを一度に 1 つのスレッドだけが実行するようにする必要があるため、それらのプールが必要になります。
于 2009-11-13T10:48:24.723 に答える
2
- それらは構築に費用がかかり、多くの場合、データベース、メッセージ キューなどの外部リソースへのアクセスが必要になるためです。
- それらの無制限の数が作成されることを望まないため、そうしないとリソースが不足します
- コンテナーがスレッド セーフを管理できるようにするため
于 2009-11-13T11:05:59.960 に答える