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

А возьмем ситуацию, что на том же сервере вы запускаете Publisher / ServerReload, а также кто-то там ведет разработку.

Итак, вы можете создать такое своеобразное пасхальное яйцо через файл settings.ini сервера QlikView..

ClearCacheTimesPerDay=1

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

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

ClearCacheTimesPerDay=1 Einmal am Tag um Mitternacht 00:00
ClearCacheTimesPerDay=2 00:00 und 12:00
ClearCacheTimesPerDay=3 00:00 08:00 16:00
usw.
ClearCacheTimesPerDay=24 jede Stunde

 

Тестирование

Мы протестировали сервер Win2016 с оперативной памятью 8 ГБ. Рабочий набор сервера ограничен 50%, поэтому серверный процесс QlikView должен кэшировать до 4 ГБ данных.

https://3.bp.blogspot.com/-t9zRY_L4kA4/WRWc1kbv0OI/AAAAAAAAALU/lIwBntarYUkNJJfiR6Wmo5fxNRmoRf2sgCLcB/s400/workingsetlow.png

 

Скрипт

Скрипт для тестирования работы приложения Qlik:

В макете есть простая таблица. Если вы выберете некоторые значения, а затем щелкните правой кнопкой мыши «Select excluded», вы заполните кеш-память сервера несколькими десятками мегабайт с каждым новым выбором.

https://1.bp.blogspot.com/-ebMy1ZCduuI/WRWZC-4rPJI/AAAAAAAAALI/dIJNkLf_6jg3kCUEtIhGOxgKhdk1BjzqACLcB/s640/select%2Bexcluded.png

Конфигурация и тестирование

  1. Служба QlikView Server остановлена. Внесены изменения в файл Settings.ini, служба запущена вновь

https://4.bp.blogspot.com/-RKsddVc8f04/WRWDlsr1gCI/AAAAAAAAAJ8/P3WgCjKBQLg7UuZMbh9HycRQo6-ASQSaACLcB/s400/2017-05-12%2B09_44_30-62.141.36.94%2B-%2BRemotedesktopverbindung.png

  1. Так у нас выглядит планировщик заданий. https://4.bp.blogspot.com/-Kur_QfiSWBY/WRWDpIgiGSI/AAAAAAAAAKA/EkRnewH1XIwJWoAXY-JtGff-m7Xw_w8FQCLcB/s640/2017-05-12%2B09_43_23-Kalender%2B-%2Brva%2540heldendaten.net%2B-%2BOutlook.png
  2. После обнуления кэша, по итогам тестирования мы видим такую картину: в 10:00 вы можете увидеть крутой фланг в Performance Monitor. Таким образом, память освобождается! Размер серверного процесса QlikView упал до 192 мегабайт в диспетчере задач. Установка сбросила кеш 1,98 ГБ! Оставшиеся 192 МБ — это данные в нашем тестовом приложении, а также небольшие накладные расходы на серверный процесс QlikView.

https://1.bp.blogspot.com/-peSrGVE1voU/WRWD59Op9jI/AAAAAAAAAKI/S5rF6gz7i2orWLybkwGhQBsRlIS5WqDmgCLcB/s640/2017-05-12%2B10_04_52-62.141.36.94%2B-%2BRemotedesktopverbindung.png

Настройка ClearCacheTimesPerDay работает более аккуратно, чем чистая остановка / начало службы QlikViewServer (в которой все онлайн-пользователи вылетают из текущего сеанса QlikView). Тем не менее, это может быть очень полезно для тестового сервера.

Источник