Ещё с осени стал замечать что иногда с хостингом на котором находятся мои сайты что то не в порядке. То подвисает загрузка страниц, то вообще страница ошибок выскакивает. Иногда даже при кэшировании страниц происходит непонятная перекодировка. Например если кодировка utf-8 то кэш сохраняется в кодировке win-1251. После очистки кэша всё восстанавливается. Дальше - хуже. Дошло до того что не мог одну публикацию исправить. Пришлось лезть в БД и удалять её вручную, пёрла ошибка с сохранением из за того что не удалялся прежний вариант.
Написал хостеру о проблемах. И вот что мне ответил хостер - Здравствуйте! Ваш аккаунт создаёт большую нагрузку на сервер. Проверьте скрипты ,которые могли бы сильно нагрузить сервер. Если это происходит периодически, возможно можно будет увидеть какие скрипты нагружают сервер, если включить лог-файлы и
посмотреть по ним. Я в свою очередь отправил вопрос о том, какие лог-файлы имелись ввиду. Вот ответ - Я имел в виду лог-посещений (и анализатор логов awstats для удобства), чтобы посмотреть на какие страницы больше заходов во время нестабильной работы сайта. После чего мы договорились что мне на почту будут раз в сутки отправлять данные о нагрузке на сервер. И судя по данным, что то действительно очень сильно перегружает сервак.
+-----------------------------------------------------------------------+
| server | user | cp_stat | quota | date | warnings | errors |
+-----------------------------------------------------------------------+
| gandalf | prosatru | 81.03 | 19 | 2009-01-20 | 3926 | 312 |
| gandalf | prosatru | 62.21 | 19 | 2009-01-21 | 2284 | 63 |
| gandalf | prosatru | 116.33 | 19 | 2009-01-22 | 4236 | 256 |
| gandalf | prosatru | 126.8 | 19 | 2009-01-23 | 6341 | 33 |
| gandalf | prosatru | 89.09 | 19 | 2009-01-24 | 3380 | 134 |
| gandalf | prosatru | 135.05 | 20 | 2009-01-25 | 5714 | 186 |
| gandalf | prosatru | 124.45 | 20 | 2009-01-26 | 5640 | 94 |
| gandalf | prosatru | 118.41 | 20 | 2009-01-27 | 4781 | 87 |
| gandalf | prosatru | 25.65 | 19 | 2009-01-28 | 5185 | 65 |
| gandalf | prosatru | 111.27 | 19 | 2009-01-29 | 13291 | 795 |
+-----------------------------------------------------------------------+
В таблице приведены следующие значения: cp_stat - статистическая процессорная
нагрузка аккаунта на сервер, warnings - число превышений нагрузки на процессор
более 10% (втечение 5 секунд), errors - число превышений нагрузки на процессор
более 50% (втечение 5 секунд). В первую очередь стоит обратить внимание на
параметр cp_stat (безразмерная величина, характеризующая статистическую нагрузку
на процессор втечение суток) - она не должна превышать заданных норм. Такими нормами
для виртуального хостинга (кроме тарифа VIP) является значение 50 и для тарифа VIP
значение - 90. Также необходимо обратить внимание на столбцы warnings и errors.
Число errors должно быть равно 0, а warnings должно стремиться к нулю. Нормально
отлаженные работающие скрипты среднего сайта не должны отнимать более 3% процессорного
времени более 3-5 секунд. Если это не так, и дальнейшая оптимизации невозможна,
следовательно необходимо рассмотреть вариант размещения проекта на выделенном сервере.
Вот такую таблицу я получил в первый же день. Теперь дело за малым, найти что так сильно грузит сервер. И найти не зная толком что ищеш, всё же на одном аккаунте у меня 4 сайта на КМС и плюс отдельные скрипты. Как я искал откуда нагрузка и что я делал, будет позже.