Apache - активный или не активный?

Да это. 2007 Exchange изменил значение по умолчанию так, чтобы Списки рассылки могли только использоваться Аутентифицируемыми Пользователями. Если Вы входите в Консоль Exchange и группу распределения, направляетесь в Варианты доставки. Вы будете видеть "аутентифицируемых пользователей только" установленный флажок. Очистите то поле, и внешние пользователи могут затем использовать его.

6
задан 20 November 2009 в 07:50
2 ответа

Преимущество от наличия активного на - то, что клиент сможет запросить больше чем один объект с Вашего сервера, не имея необходимость создавать другое соединение TCP (трехстороннее квитирование с его включенными распространениями в прямом и обратном направлениях). Проблема с этим состоит в том, что, если, скажем, у Вас есть ограничение соединения в апачском наборе к 300, если существует 300 активных соединений все, которое другие должны будут ожидать, пока первые 300 клиентов не сделаны и/или тайм-аут истекает.

Активное отключение вынудит клиенты создать 1 соединение на запрос. Когда сокет правильно закрывается на обоих концах, он входит в состояние TIME_WAIT, как Вы заметили. Это, оказывается, гарантирует, что порт, используемый в том соединении, не получает данные из предыдущего соединения некоторое время перед стать доступным (см. это, но существует намного больше там). В моей системе Linux/proc/sys/net/ipv4/tcp_fin_timeout установлен на 60 секунд. Вы можете попытаться уменьшить это, но не заходите слишком далеко вниз. Как далеко? Это зависит от того, сколько соединений в секунду Вы добираетесь. Для 100-200req/s, не потрудитесь изменять значение по умолчанию.

5
ответ дан 3 December 2019 в 00:11

На сервере низкой памяти Вы собираетесь столкнуться с проблемами с сообщениями проверки активности, включенными в любом виде масштаба. Это вызвано тем, что апач создает один поток или процесс для каждого подключения, выделяя значением по умолчанию 8 МБ стека на Linux (который может быть скорректирован вниз через конфигурацию Apache, до какой степени является зависящим от приложения). На Вашем сервере на 360 МБ, который, вероятно, будет проблемой, если каждый клиент будет держать открытый по крайней мере один и возможно два соединения.

Это - на самом деле, основная причина, что основанные на событии веб-серверы как nginx и lighttpd были созданы - чтобы позволить системам обрабатывать десятки тысяч соединений с помощью нормальных объемов памяти.

Так, я выключил бы keppalives в Вашей ситуации и живой с влиянием производительности на клиенты. Или, возможно, используйте что-то как nginx перед апачем для обработки стоящих с пользователем соединений, проксируя запросы к Apache. Это - очень общая модель, эффективно рассматривая Apache как "пул потоков" для того, чтобы потенциально заблокировать операции как диск или доступ к базе данных.

7
ответ дан 3 December 2019 в 00:11

Теги

Похожие вопросы