Sitecore Prefetch Cache Size Различный после обновления - PullRequest
0 голосов
/ 13 мая 2019

Я выполнил обновление Sitecore с 8.1 до 9.0 с обновлением 2. Я вижу, что существует проблема с кэшем предварительной выборки.

В старой версии кэш предварительной выборки webdb увеличивается до 6 ГБ, но в обновленной версии он не пересекает 1,5 ГБ.

Sitecore 8.1 Экземпляр enter image description here

Обновленный экземпляр Sitecore 9.0

enter image description here

Ответы [ 2 ]

0 голосов
/ 21 мая 2019

В модернизацию архитектуры кэширования были вложены огромные средства. Я приведу несколько вещей, которые были изменены:

1) Изменитель игры - Sitecore.Interning.config , позволяющий повторно использоватьповторяемые неизменяемые объекты (например, строки, идентификаторы) - теперь мы сохраняем гораздо меньше дублирующихся объектов в памяти прямо из коробки.Вы можете увидеть разницу, отключив интернирование в вышеупомянутой конфигурации.

2) Ввести интерфейс Sitecore.Caching.Interfaces.ISizeTrackable, который должен помочь сущностям лучше узнать их размер - это очень верно для PreferechData;он даже даст вам различные размеры для настройки пула приложений 32/64 бит (так как размер указателя отличается).

3) Введен интерфейс Sitecore.Common.ITrimExcess, который позволяет уменьшить коллекцию при добавлении основной части данных.(внутренне полагается на TrimExcess () API для List или HashList).

Подводя итог - ожидаются гораздо меньшие числа для основных частей платформы, поскольку они были тщательно обработаны:)

0 голосов
/ 14 мая 2019

Вы сравнили, сколько памяти фактически потребляет процесс w3wp? Похоже, у вас есть такое же количество элементов в кэше. Из того, что я вижу на скриншотах, кеш работает как и ожидалось в обоих сценариях.

Размер кэша каждого объекта составляет , оценивается в реализации ICacheable.GetDataLength() каждого кэшируемого объекта. Это значение не всегда точное, а иногда оно довольно далеко. По крайней мере, в предыдущих версиях Sitecore вы могли сделать сумму для всего столбца размера кэша и получить общую сумму, намного превышающую ваш w3wp размер процесса.

Если я правильно помню, Sitecore изменил способ оценки размеров объектов по умолчанию. Вы, вероятно, видите эффект этого.

...