Патч для ограничения числа запросов для VirtualHost в apache

Решил опубликовать патч к mod_limitipconn, позволяющий выставить дополнительные ограничения для VirtualHost и защитить систему от краха при перегрузке.

Введены директивы:

  • MaxConnPerUid - максимальное число одновременно обслуживаемых запросов для одного пользователя (User в VirtualHost)
  • MaxConnPerVhost - максимально допустимое число одновременных запросов на один виртуальный хост (VirtualHost). Удобно использовать в системах хостинга, для предотвращения забирания всех ресурсов одним хостером.
  • MaxLA1, MaxLA5, MaxLA15 - значения Load average при превышении которых работа всех CGI и PHP скриптов (и прочей динамики)будет заблокирована. Проверка осуществляется только при запросе скрипта. Не обязательно указывать все три директивы достаточно одной, например: "MaxLA5 50". Рекомендуется указывать заведомо нереально большие значения, для блокирования только в самых критических ситуациях.

    Пример:

      <Directory />   Options FollowSymLinks   AllowOverride None   MaxConnPerIP 15   MaxConnPerUid 40   MaxLA1 60.0   MaxLA5 15.0 </Directory>