JSFセッションタイムアウトなし。欠点は何ですか?
-
27-10-2019 - |
質問
WAS7.0には小さなJSF Webアプリケーションがあり、1ページだけですが、かなり大きなユーザーベースです。
すべての(1)豆を要求スコープとして宣言し、javax.faces.state_saving_methodクライアントを使用して、期限切れのないセッションを使用してサーバー上のメモリの問題に出くわすことなく使用できますか?
大規模なアプリケーションではどのように機能しますか?
理由:IBMは私のPMRを扱っている間、私はすぐにWAS7.0で問題を回避しようとしています。
編集:この時点で、自分で測定しようとするリソースがなく、アプリをそのままにしておきます(あまりにも多くのユーザーを悩ませないことを望んでいます)。
解決
必ずしも豆の範囲を変更する必要はありません。豆を属する範囲に載せてください。セッションのスコープされた豆を乱用してリクエストを保持したり、スコープデータを表示したりする場合にのみ、ストーリーは実際に変わります。リクエストまたはビュースコープデータは、セッションスコープされた豆ではなく、リクエストまたはビュースコープ豆に属します。セッションスコープ付き豆は、ログインユーザー、サイト全体の設定、選択した言語など、セッション全体のデータを保持するためにのみ使用する必要があります。
状態保存方法をサーバーからクライアントに変更すると、間違いなく修正されます ViewExpiredException
バッキングセッションが期限切れになっている展望。サーバーのメモリ使用量が減少しますが、サーバーのネットワーク帯域幅の使用が増加します。しかし、既にGZIPを使用している場合(またはまだ存在していないので、それをオンにしていません)、その影響はかなりマイナーです。