|
|
|
| Привет всем. Задача такая
При высокой нагрузке на сайт предполагается искусственно ограничивать количество запросов к системе, что бы оно не превышало некоторого экспериментально определенного предела. При этом запросы пользователей, которые обращаются к сайту через корпоративную сеть (КС), имеют более высокий приоритет по сравнению запросами пользователей из Интернет.
Для ограничения нагрузки на сайт предполагается следующий алгоритм ограничения количества запросов:
1. Если достигнут предел количества запросов к сайту, то:
1.1. Разделить входящий трафик на две группы: «Запросы из Интернет», «Запросы из КС». Все запросы из Интернет перенаправлять на статическую страницу «Сайт временно не доступен».
1.2. Если достигнут предел количества запросов к сайту для запросов из КС, то все эти запросы перенаправлять на статическую страницу «Превышен лимит подключений». Иначе для КС сайт работает в обычном режиме.
2. Если предел количества запросов к сайту не достигнут, то сайт работает в обычном режиме.
как это победить настройкой apache??? | |
|
|
|
|
|
|
|
для: kmaw
(04.04.2008 в 06:57)
| | Не припомню модуля, который решал бы полностью такую задачу.
Как вариант:
Сделать 2 виртуальных хоста: один для Интернета, другой для КС. И на каждый поставить свои ограничения. Apache у Вас какой?
Попробуйте модуль cband - позволяет ограничивать кол-во запросов и кол-во одновременных подключения с одного IP-адреса и для всего виртуального хоста. А также может регулировать скорость исходящего трафика.
Но смотря для каких целей Вам это нужно. Для защиты от DOS - cband бессилен (не справляется). Ограничивать скорость исходящего трафика на Apache - тоже далеко не лучший вариант.
PS: При превышении лимитов cband отдает 503 ошибку.
PPS: Запросом к Apache считается любое обращение к любому файлу - картинка, css, html, php - абсолютно все. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(04.04.2008 в 07:38)
| | Понятно. А тогда хотя бы как сконфигурить apache, что бы он при превышении предела коннектов выдавал страницу типа "сервис недоступен" | |
|
|
|
|
автор: rusty_angel (04.04.2008 в 10:25) |
|
|
для: kmaw
(04.04.2008 в 07:56)
| | mod_limitipconn или mod_cband. При превышении ограничений они отдают 503 ошибку.
Наверняка есть ещё модули для этого. | |
|
|
|
|
|
|
|
для: kmaw
(04.04.2008 в 07:56)
| | Директива mpm_prefork_module (базовый mpm)
MaxClients число_одновременных_подключений
|
| |
|
|
|