当社では、元は ColdFusion + Access でしたが、後にクラシック ASP + MS Sql に変換された、リクエスト システムと呼ばれるタスク/時間追跡用のアプリを使用しています。部門ごとに分類されているため、MIS、マーケティング、ロジスティクスなどに 1 つ存在します。問題は、(主にマネージャー) が一度に複数のブラウザーを使用し、2 つのブラウザー ウィンドウを開いたときに発生します。リクエストシステムはセッション変数を使用しており、多くのセッション変数が使用されており、「セッション」はアプリケーション内で 2300 回参照されています。ご想像のとおり、2 つが同時に開いていると、変数が混ざり合ってあらゆる種類の異常が発生します。
システムには、これを「修正」する 3 年前の MIS 要求があり、3 人の開発者が取り組んできました。他の誰かがこのようなプロジェクトに取り組まなければならなかったのか、問題のいくつかを軽減しようとするハックがあったのかどうか疑問に思っていました. global.asa で何かを呼び出してその他をロードすることを考えていました。クエリ文字列からのセッション変数。問題は、次のようなことが起こっていることです。
If (Session("Application") <> Request("App")) and Request("App") <> "" THEN
Session("Application") = Request("App")
End If
インクルード ファイル内の関数を見ると、6 つの異なるセッション変数を参照する 4 つのパラメーターを持つ関数があります。ですから、これは苦痛になるでしょう。
過去に誰かがこのようなことをしなければなりませんでしたか? 役に立つハックはありますか?