Если Вы желаете, чтобы Ваш VPS, DDS-сервер работал наиболее эффективно, то необходимо потратить время как минимум на настройку веб-сервера Apache, потому как по умолчанию на все серверы устанавливается неудачный конфигурационный файл от разработчиков Apache. По началу это даже не сильно заметно, однако после развертывания веб-сайтов проходит не так много времени и Вы начинаете замечать, что периодически сервер либо полностью не отвечает по HTTP ("сайты не грузятся"), либо - обрабатывает поступающие запросы слишком медленно (время загрузки страниц > 2-3 секунд). Часть пользователей практически сразу обнаруживает, что сайты загружаются даже медленнее, чем на серверах виртуального хостинга. В большинстве случаев подобного рода проблемы легко диагностируются и для этого достаточно выполнить две команды UNIX shell посредством SSH-доступа:
grep mem /var/log/httpd/error_log* grep Max /var/log/httpd/error_log*
Типичный пример вывода первой команды:
ImportError: /usr/lib64/python2.4/lib-dynload/timemodule.so: failed to map segment from shared object: Cannot allocate memory
Ошибки такого рода означают, что веб-серверу периодически не хватает оперативной памяти для корректной работы. Стоит заметить, что в зависимости от настроек среднее потребление оперативной памяти одним процессом веб-сервера составляет порядка 30-40Мб.
Типичный вывод ошибок второй команды:
[Thu Dec 11 13:42:50 2008] [error] server reached MaxClients setting, consider raising the MaxClients setting
Ошибки этого плана появляются, если одновременно к сайту осуществляется большое количество запросов. Достигается лимит одновременно запущенных дочерних процессов Apache и как только данный лимит превышается, все остальные запросы не могут быть обработаны, так как все запущенные процессы Apache уже заняты обработкой других запросов.
Наиболее простое решение описанных проблем - настройка веб-сервера под конкретные требования Вашего сервера.
Пример, конфигурационных параметров, подходящих для тарифа VPS-1:
StartServers 1 MinSpareServers 1 MaxSpareServers 3 ServerLimit 30 MaxClients 30 KeepAliveTimeout 3 MaxKeepAliveRequests 100 MaxRequestsPerChild 500
Помимо особенно отмеченных в данной статье проблем связанных с веб-сервером, нехватка памяти сказывается в общем случае не только (!) на веб-сервере Apache, но и на сервере баз данных, почтовом сервере и других важнейших службах VPS, DDS.
Если после настройки веб-сервера проблемы продолжают повторяться, то следует подумать о возможности перехода на тариф с большим количеством оперативной памяти.
|