Параметры рециркуляции для объекта состояния приложения ASP.Net - PullRequest
0 голосов
/ 19 июня 2009

Какие есть варианты для перезапуска объекта состояния приложения ASP.Net? Я использую этот объект для хранения очередей соединений с базой данных для слоя доступа к данным на основе веб-сервиса. Я обеспокоен тем, что в течение дней / недель / месяцев я в конечном итоге выделю растущие суммы памяти для соединений с БД, которые больше не используются. Соединения создаются автоматически по мере необходимости, поэтому их сохранение не так уж важно.

Было бы здорово выборочно проанализировать состояние приложения и выбросить только то, что мне не нужно. Но на практике просто уронить весь объект и начать все с нуля будет так же хорошо. Однако мне нужно быть осторожным, чтобы процесс очистки не прерывал используемые в данный момент соединения.

Ответы [ 2 ]

1 голос
/ 19 июня 2009

Что произошло до того, как вы начали кэшировать соединения? Вызывало ли их кэширование какое-либо ощутимое улучшение производительности или использования ресурсов? Я был бы немного удивлен, если бы это произошло, учитывая, что ADO.NET делает пул соединений для вас.

Нет вариантов утилизации для состояния приложения. Это для сервера, для домена приложения.

Для другого варианта кэширования рассмотрите использование объекта Cache. Это также для каждого приложения, но вы можете установить истечение срока действия записей в кэше.

0 голосов
/ 19 июня 2009

Я провел некоторое тестирование, и кажется, что объект приложения находится в пуле приложений. (Переработка пула приложений очистила данные в объекте приложения.)

...