WebSphere 7 で PrimeFaces 3.4 と MyFaces 2.0.7 を使用しています。状態をクライアントに保存すると、サーバーが状態を保存するよりも約 2 倍高速な要求処理になることに気付きました。クライアントの保存状態が有効な場合、リクエストは 150 ~ 350m かかります。サーバーの状態を保存すると、300 から 600 ミリ秒になります。POST の ViewState には約 200kb あります。
したがって、速度から支払われるコストはデータ転送です。幸いなことに、これはイントラネット アプリケーションのみです。
しかし、どのように実装できるのでしょうか? HTTP リクエストで状態を送信する方が、セッションから状態を復元するよりも高速です。数千の同時ユーザーセッションがディスクにシリアル化されるため、セッションから何かを復元するとディスクにバインドされた操作になり、クライアントからのみクライアントにバインドされることを理解しています。
しかし、テスト中のユーザーは私だけです。このような速度の違いは予想される動作ですか、それともサーバーの構成が間違っていますか?