1

読んでみると、InProc モデルを使用するときに asp.net セッション時間を変更するには 2 つの変更が必要なようです...

  1. web.config - アプリケーション プールのアイドル状態
  2. タイムアウト - これを設定する必要があるようです >= Session.Timeout

http://asp-net.vexedlogic.com/2012/05/23/aspasp-net-session-timeout-how-do-i-change-it/を読んでこれを集めました。

したがって、アプリケーション プールのタイムアウトを変更する余裕がない場合は、StateServer を使用するように変更し、上記の記事で説明されているようにプログラムで Session.Timeout を設定するかどうか疑問に思っています。 config @timeout とアプリケーション プールのアイドル設定はどのように設定されていますか? 私の 2 つのアクションですべてが処理されますか?

それが処理される場合、次の質問は、InProc と StateServer のパフォーマンスの比較を誰かが知っているかどうかだと思います。

前もって感謝します。

4

1 に答える 1

2

私の理解では、インプロセス サーバーから状態サーバーに切り替えた場合、アイドル タイムアウト (IIS 内) の設定はセッション状態のタイムアウトに影響しません。

アクティビティがない場合 (アイドル タイムアウトが経過した場合) にアプリケーション プールで終了される可能性があるワーカー プロセスは引き続き存在しますが、セッション状態 (つまり、ユーザー セッションとアプリケーション セッションの値) はそれ以降も維持されます。セッションのタイムアウトは、構成で設定されたタイムアウト値によって制御する必要があります(ここから)つまり

<configuration>
  <system.web>
    <sessionState mode="StateServer"
      stateConnectionString="tcpip=SampleStateServer:42424"
      cookieless="false"
      timeout="20"/>
  </system.web>
</configuration>

セッションデータは保存時にシリアライズ/デシリアライズする必要があるため、Inproc は StateServer よりも高速です。また、遅延が発生する可能性のある別のマシンに保存される場合もあります。しかしもちろん、状態サーバーには利点があります。つまり、アプリケーションの再起動間でのセッション状態の永続性 (アプリ プールのリサイクル)、Web ファーム内の複数のサーバー間で状態を共有できます。

この質問では、State Server モードを使用することの長所と短所についても説明します。

于 2014-02-13T09:27:33.617 に答える