Реализация объектного кеширования в классическом ASP с утечкой памяти

Я попытался реализовать различные реализации кэширования на классическом сайте ASP, чтобы разгрузить базу данных во время интенсивного трафика.

Мой подход был такой:

Создайте глобальный объект HashTable в global.asa, где я позже сохраню jscript-объекты внутри


Это дает мне глобальный HashTable-объект, который я через определенные промежутки времени заменяю содержимым HashTable. Размер будет немного отличаться, но я, однако, каждый раз делаю .Remove () и .Add () для всех объектов.

Это работает очень хорошо, помимо того факта, что через некоторое время распределение памяти в приложении становится высоким, что приводит к нерациональному поведению сеансов. Будет "забыть» сеансы, но не вызывают OnSessionStart () в global.asa. Для этого оставляем посетителей с пустой сессионной коллекцией.

Можно ли как-то улучшить процесс перераспределения памяти? Есть ли лучший подход для объектного кэширования?

Я пытался использовать простые текстовые файлы с сериализованными данными json, но десериализация этого требует много времени. Я думал о двоичной сериализации, но яя не уверен, если этоЭто возможно даже в классическом ASP.

Ответы на вопрос(4)

Ваш ответ на вопрос