1

私はWAS7.0に小さなJSFWebアプリケーションを持っており、ページは1つだけですが、ユーザーベースはかなり大きくなっています。

all(1)Beanをリクエストスコープとして宣言し、期限切れでないセッションを使用してサーバーのメモリの問題に遭遇することなく、javax.faces.STATE_SAVING_METHODクライアントを使用できますか?

大規模なアプリケーションではどのように機能しますか?

理由:IBMがPMRを処理している間、WAS7.0の問題を迅速に回避しようとしています。

編集:この時点で、私はそれを自分で測定しようとするリソースがなく、アプリをそのままにしておきます(あまりにも多くのユーザーを煩わせないことを望んでいます)。

4

1 に答える 1

3

必ずしもBeanのスコープを変更する必要はありません。Beanをそれらが属するスコープ内に保持するだけです。セッションスコープのBeanを悪用して要求を保持したり、スコープのデータを表示したりする場合にのみ、ストーリーは実際に変わります。スコープデータのリクエストまたはビューは、セッションスコープのBeanではなく、スコープのリクエストまたはビューのBeanに属します。セッションスコープのBeanは、ログインしたユーザー、サイト全体の設定、選択した言語など、セッション全体のデータを保持するためにのみ使用する必要があります。

状態保存方法をサーバーからクライアントに変更するとViewExpiredException、バッキングセッションの有効期限が切れたビューのオンが確実に修正されます。サーバーのメモリ使用量は減少しますが、サーバーのネットワーク帯域幅使用量は増加します。ただし、すでにGZIPを使用している場合(またはまだ使用していない場合は、同様にオンにしてください)、影響はごくわずかです。

于 2011-12-02T18:10:25.017 に答える