0

事前に構築された ASP Web サイトを、単一のワーカー プロセス環境からクラウド サーバー上の複数のワーカー プロセス環境に移動する必要がありました。私は、追跡目的ですべてのセッション情報の最後の 2 分間を格納するために使用する静的な arraylist 変数を持つクラスを持っていました。管理者は、ライブ レポートを表示するためにこの arraylist にアクセスするために使用します。しかし、それをクラウド インフラストラクチャに移行すると、結果が正しくなくなりました。これは、ロード バランサの背後にあるどのサーバーがページを処理しているかに依存するため、アプリケーション プールごとに静的変数の複数のインスタンスがあります。mysql に移行しようとしましたが、定期的にデータをフラッシュする必要があり、パフォーマンスの問題もありました。ここでは、配列リストが大量に処理されて有用なデータが生成されるため、メモリ内に何かが必要です。

ロックなしで静的変数を使用する前にも欠点がありましたが、それは1つまたは2つのレコード間の違いにつながるだけでしたが、非常に高速であったことに注意してください。

4

1 に答える 1

0

SQL サーバー ベースのセッション ストレージによってセッションをバックアップすることを検討できます。または、アプリケーション キャッシュ サーバーを使用してバックアップすることもできます。これにより、複数の Web サーバー間で共有できます。

于 2013-10-29T05:15:53.140 に答える