Простите, если это больше stackoverflow vs. serverfault. Вроде на границе.
У нас есть приложение, которое кэширует большой объем данных о товарах для приложения электронной коммерции, используя кэширование ASP.NET. Это объект словаря с 65 КБ элементов, и по нашим расчетам размер объекта составляет ~ 10 ГБ.
Проблема:
Объем памяти, потребляемой объектом, кажется, намного превышает наши расчетные 10 ГБ.
САМАЯ БОЛЬШАЯ ЗАБОТА: Похоже, что мы не можем использовать более 60% из 32 ГБ на сервере.
Что мы уже пробовали:
В machine.config / system.web (sf не разрешает теги, простите за форматирование):
processModel autoConfig="true" memoryLimit="80"
В web.config / system.web / caching / cache (sf не разрешает теги, простите за форматирование):
privateBytesLimit = "20000000000" (and 0, the default of course)
percentagePhysicalMemoryUsedLimit = "90"
Окружающая среда: Windows 2008R2 x64 32 ГБ ОЗУ IIS7
Кажется, ничто не позволяет нам превысить значение 60%.