SQLCacheDependency с 100000 записями - PullRequest
0 голосов
/ 22 июля 2010

Мы используем SQLCache Dependency в нашем приложении asp.net.Мы храним, как 100000 записей в кеше, это хорошая практика, или нам нужно найти альтернативное решение, потому что иногда из-за этого ЦП нашего сервера стучит на 100% и нам приходится сбрасывать пулы приложений.оценили.

Ответы [ 2 ]

3 голосов
/ 22 июля 2010

Зависит от того, как вы это реализовали; но это звучит как плохая идея. Вы не даете много деталей.

Если вы храните 100000 записей в одном и том же сегменте кэша, и он становится недействительным; затем следующий запрос должен получить все 100000 записей, прежде чем он сможет продолжить работу, даже если ему нужно только несколько из них. Если несколько пользователей запрашивают ресурс одновременно, они будут помещены в очередь до тех пор, пока первый запрос не завершит извлечение записей. Похоже, это может быть вашей проблемой.

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

Я не знаю, насколько вам поможет этот ответ, но вы не очень подробно описываете вопрос. Не стесняйтесь обновлять свой вопрос, и вы можете получить лучшие ответы.

1 голос
/ 22 июля 2010

Возможно, вы захотите использовать сервер кэширования, например memcached или " Скорость кодового имени " от Microsoft, который находится в CTP3 . Существует также блог для Velocity и пример зависимости sql здесь .

Они оба являются серверами распределенного кэша и должны работать лучше для вашего сценария, и они будут масштабироваться намного лучше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...