Ограничение скорости на Apache с помощью модуля "mod_ratelimit"

Просмотров: 403Комментарии: 0
Web-Сервер

Я же хочу, чтоб мой сайт выдерживал огромное количество обращений smile.

Значит ограничим скорость передачи данных для клиента.

(надеюсь это так работает smile

В статье используются программы:

GreenShot v1.2.10.6 Программа для создания скриншотов оф. сайт
AkelPad v4.9.8 Текстовый редактор оф. сайт

Модуль доступен в "Apache" начиная с версии 2.4.24

Проверить версию установленного "Apache" можно командой из консоли "httpd -v"

Или

посмотреть в логах "error.log"

Или почитать в файле "CHANGES.txt"

Или... или... или...

2017-11-29-12_25_52-administrator_-c__windows_system32_cmd.exe.jpg

Для начала нужно определиться, а какую максимальную скорость оптимально задать. Для этого нужно выяснить сколько весят страницы на сайте.

Открываем браузер, заходим на нужный сайт, жмакаем "F12", вроде у всех на "F12" (открывается анализатор, или как его там) у меня браузер "Vivaldi" (в "Vivaldi" нужно ещё галочку поставить "Disble cache" 2017-11-29-12_18_59-sajt-_pro_.jpg, чтоб всё скачивалось полностью).

Выбираем раздел "Network" или "Сеть" и обновляем страницу.

2017-11-29-12_12_28-sajt-_pro_.jpg

Внизу будет написано сколько передано данных.

2017-11-29-12_18_49-sajt-_pro_.jpg

Так. Теперь понятно. Главная страница весит примерно 600кБ... статья в среднем 1000кБ.

Ну вот и ограничим скорость передачи данных в 1024кБ. Как обычно скорость указана не в тех единицах smile т.е. по идее страничка должна будет загрузиться за один вьюх (1с).

Кстати - можно поставить 1кБ LOL Пусть пользователи страдают, очень забавно смотреть как сайт постепенно прогружается LOL

Теперь активируем модуль, раскомментировав его название в файле конфигурации "Apache" "httpd.conf".

LoadModule ratelimit_module modules/mod_ratelimit.so

Для раскомментирования нужно убрать символ чиновник решётка.

2017-11-29-12_06_07-httpd.conf-akelpad_.jpg

Открываем файл "httpd-vhosts.conf" и дописываем над "</VirtualHost>" вот это:

<Location "/">
    SetOutputFilter RATE_LIMIT
    SetEnv rate-limit 1024 
    SetEnv rate-initial-burst 200
</Location>

2017-11-29-15_40_02-httpd-vhosts.conf-akelpad_.jpg

А "rate-initial-burst" - это количество данных которые мы передаём, до того как начнём ограничивать скорость, мне хватит и 200кБ cheese

Перезапускаем "Apaсhe" и можем спать спокойно. Красотень cool smirk

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question


Комментарий будет опубликован после проверки

     

  

(обязательно)