Администрирование ОС Solaris

       

Снижение частоты синхронизации файлового кэша с диском


При частых и объемных операциях с файлами, файловый кэш быстро заполняет значительный объем памяти. В системах Solaris до версии 8 он даже конкурировал с процессами за оперативную память. Процесс fsflush регулярно (по умолчанию - раз в 30 секунд) "сбрасывает" на диск содержимое кэша, обеспечивая таким образом синхронизацию кэша и файловой системы. Если количество открытых файлов велико, эта синхронизация может приводить и к потерям времени и к чересчур высокой загрузке дисковой подсистемы.

Демон fsflush руководствуется значением двух переменных, squid и tune_t_fsflushr, - значение им можно присвоить в файле /etc/system. Для систем с большим объемом памяти установленное по умолчанию значение squid в 30 с делает процесс fsflush чересчур дорогостоящим.

Для того чтобы поубавить аппетит fsflush, время цикла синхронизации следует увеличить, изменив в бо'льшую сторону значение squid. Поскольку fsflush оказывает влияние на всю систему, лучше всего, чтобы он работал в течение более коротких промежутков времени. Для этого значение tune_t_fsflushr (время, отведенное fsflush на синхронизацию) должно быть меньше: выделив демону меньшее число секунд, вы заставите его выполнять меньшую по объему запись.



Содержание раздела