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

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

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

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

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

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

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кБ. Как обычно скорость указана не в тех единицах :) т.е. по идее страничка должна будет загрузиться за один вьюх (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кБ biggrin

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

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

smile biggrin LOL rofl2 wink rolleyes2 acute aggressive bad blume1 blush bomb boredom bye clapping congratulate cool cray dance2 diablo drinks empathy flag_of_truce fool fool3 good good2 greeting help hi hmm i_am_so_happy mad mocking morning1 music nea new_russian nyam2 ok pardon playboy pleasantry sad scare scratch_one-s_head secret shok sorry stop timeout yahoo shyesok crazy dash1.gif dash2.gif gamer.gif hang1.gif ireful.gif mail1.gif mamba.gif sarcastic.gif wacko1.gif wacko2.gif wacko3.gif


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

     

  

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

Внимание! На сайте есть мат! Продолжая просмотр вы подтверждаете, что Вам исполнилось 18 лет.