Тюнинг Squid’а. Отсебятина

Использование рекомендаций, указанных в предыдущем посте позволило уменьшить потребление ресурсов на моем сервере (RHEL 5, ядро 2.6.25.11, Squid-3.0.STABLE24, кол-во клиентов 1500+).
Что было предпринято:

  1. Отключено логирование access.log и store.log
  2. Включена директива pipeline_prefetch

В итоге нагрузка на процессор упала с ~60-80% до ~1-15% в «спокойное» время, нагрузка на память с ~90% до ~20-60%. Но, к сожалению, я уделил внимание чтению лога cache.log, в котором было очень много сообщений о том, что закончились свободные файловые дескрипторы. ulimit -Ha показал что у меня их максимум равен 1024. Решение проблемы:

ulimit -HSn 65535
sysctl -w fs.file-max=65535

После этого я решил пересобрать squid:

./configure --with-linux-netfilter --with-large-files --enable-storeio=diskd,ufs --with-filedescriptors=65535
make; make install clean
service squid restart

 

Тюнинг и закалка Squid’а

Автор статьи не я. Это всего лишь мой перевод этой статьи. Некоторые абзацы я пропущу, да простит меня автор статьи. Итак:

Тюнинг и закалка Squid’а является темой данной статьи, где под тюнингом мы будем подразумевать некоторое ускорение работы данного ПО, а под закалкой — обеспечение более безопасной и менее уязвимой работоспособности прокси-сервера. Стандартная установка Squid’а на Debian-сервер имеет множество включенных фич, большинство из которых просто-напросто не используется. Собственно их мы и хотим отключить. Также возможны ситуации, при которых нам нужно использовать Squid, но мы не хотим чтобы он кешировал — мы и на это обратим внимание.

Читать дальше