Фрагментация кучи больших объектов (LOH) - PullRequest
0 голосов
/ 15 февраля 2020

У меня есть веб-приложение. NET 4.6.1 с очень большим потреблением памяти. Я начинаю исследовать с dotMemory, чтобы попытаться определить возможную проблему, и я вижу много фрагментации LOH snapshot

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

с dotMemory, я вижу, что множество экземпляров выпущено в Stack memory

Если я смотрю какую-то строку изнутри, я вижу запрос SQL, но я не могу найти способ понять, где он будет сгенерирован.

enter image description here внутри строки я нашел большой запрос (более или менее) 1500 строк.

В настоящее время я не нахожу способ уменьшить этот вид фрагментации.

- Обновление

Я добавляю 2 snapshop с количеством объектов в дамп памяти для Gen0,1,2 и LOH. Глядя на объект, я вижу много запросов из EF (Sql Statement) с более чем 1000 строками и большими с 85000 символами.

Я обнаружил другую проблему в фрагментации памяти, связанной с процессом минимизации на MVC но занимает небольшую часть памяти

Memory and Objects Memory dump

...