Как лучше всего ограничить количество одновременных пользовательских сеансов с использованием Apache (IHS / 2.0.42) и WebSphere (5.1) в периоды высокого трафика?
Желаемое решение должно ограничить количество пользователей и предоставить тем, кто не получает доступ к сайту, HTML-страницу, объясняющую текущую ситуацию с трафиком, и попросить их вернуться. Тем пользователям, которые попадают на сайт, должно быть разрешено свободно перемещаться, пока они не закроют свой браузер или их сеанс не истечет.
Архитектура является трехуровневой (отдельные веб-серверы, серверы приложений и базы данных) с несколькими серверами на каждом уровне. В настоящее время наши серверы приложений и баз данных облагаются налогом на трафик, в то время как веб-сервер выдерживает трафик.
К сожалению, это будет сложно сделать с Apache, поскольку это, скорее всего, ваше узкое место. По умолчанию Apache может обрабатывать максимум 256 подключений одновременно. Сюда входят ваши проксированные данные Websphere, а также ваши статические файлы, отправляемые непосредственно из Apache. Вы были бы подавлены, сколько отдельных соединений может использовать клиент.
Есть несколько вещей, которые вы можете сделать, чтобы увеличить количество подключений, которые может поддерживать Apache, например, переключение на mod_worker_mpm может помочь.
Сложность обслуживания прозрачной страницы «сервер перегружен» возникнет как раз в тот момент, когда ваш сервер будет перегружен. То есть, когда все в порядке, вы не хотите тратить ресурсы на подсчет активных сеансов и т. Д. А когда дела идут плохо, последнее, что вам нужно сделать, - это увеличить нагрузку на свой сервер, выполняя дорогостоящие вычисления.
Невозможно зарезервировать соединения для людей, у которых уже есть сеанс, потому что http ориентирован на запросы, а не на сеансы. То есть, если они не могут установить соединение, потому что ваш веб-сервер перегружен, то их сеанс не получит никакого приоритета.
Сказав все это, я рекомендую несколько вещей:
Если ничего из этого не поможет, я бы рассмотрел следующие