После того, как я почесал голову, пытаясь понять, почему мой сайт реагирует так медленно, хотя ресурсы сервера в порядке, я наконец проверил состояние Apache и обнаружил:
78 requests/sec - 0.7 MB/second - 8.5 kB/request
256 requests currently being processed, 0 idle workers
Похоже, мой апач буквально перегружен связями. Любой, кто пытается посетить мой сайт, попадает в «список ожидания», пока Apache снова не освободится.
Кажется, у меня есть два варианта.
А) Поднимите максимальный предел подключений выше 256. Хотя в соответствии с этой статьей это не так просто:
По умолчанию параметр MaxClients имеет скомпилированный жесткий предел 256. Однако это можно изменить, перекомпилировав Apache. Некоторые дистрибутивы или хостинговые компании повышают этот лимит до очень высокого значения, например 512 или даже 1024, чтобы справиться с большими нагрузками.
Б) Найдите сценарии, которые занимают слишком много времени. Это кажется мне более сложным, так как большинство процессов Apache просто появляются, а затем снова исчезают. Кроме того, мои сайты PHP-скрипты оптимизированы довольно хорошо ... и опять же, ресурсы сервера в порядке:
Server load 2.69 (8 CPUs)
Memory Used 25.33% (2,039,108 of 8,048,804)
Swap Used 1.32% (54,156 of 4,095,992)
Какой вариант (если какой-либо из них) я должен выбрать и как мне это сделать?
РЕДАКТИРОВАТЬ
Дополнительная информация: Версия сервера: Apache / 2.2.23 (Unix) mod_ssl / 2.2.23 OpenSSL / 1.0.0-fips DAV / 2 mod_auth_passthrough / 2.1 mod_bwlimited / 1.4 FrontPage / 5.0.2.2635
HTTP Conf: http://pastebin.com/yBeLt6mP
Пример запроса на семейное предложение: http://pastebin.com/vzUVDMPR
Переключите Text-Wrap, если вставки появляются странно.