adm.unix

Рейтинг
88
Регистрация
03.09.2009

Подобная проблема обсуждалась на форуме Microsoft. Там рекомендуют загрузить Windows в Safe Mode (безопасный режим) и скопировать оттуда.

Линк: http://answers.microsoft.com/en-us/windows/forum/windows_7-windows_programs/error-0x8007045d-the-request-could-not-be/17d085c8-bab4-4d31-9a2b-e7a4ba38d387

Если подозрения на "неправильный IP", тогда достаточно грепнуть конфиги на старый айпишник. Сделать это так:

cd /_каталог_cо_скриптами_и_конфигами/

grep -r _IP_старого_сервера_ ./*

Мы еще ранее разобрали вывод vmstat и там было видно что с дисками все ОК.

Если веб сервер ждет ответа от MySQL, процессы должны быть в состоянии ожидания. Согласно картинке из первого поста, веб сервер ничего не ждет, ничем не заблокирован. Следовательно MySQL в данном случае не является проблемой.

Хм, на старой машине ситуация аналогичная. Если рестарт веб сервера не критичен, давайте попробуем переключиться на воркер. В случае с префорком, апач стартует новый процесс для каждого запроса. Если переключиться режим "worker", для каждого запроса будет запускаться дочерний поток (thread), что позволит несколько "сэкономить ресурсы". Какой у вас Linux дистрибутив?

Если CentOS:

Найдите в файле /etc/sysconfig/httpd такую строку:

HTTPD=/usr/sbin/httpd.worker

Раскомментируйте ее и перезапустите веб сервер.

Давайте проведем "дешевый тест". Можете взять firefox + firebug либо через Chrome (меню -> Developers Tools), открыть один из ваших сайтов и посмотреть что же именно загружается дольше всего? Может быть это какой то статический контент либо что то другое. Так хотя бы немного станет понятнее в чем же проблема. Если выложите скриншот Developers Tools либо Firebug, это так же немного поможет в исследовании.

---------- Добавлено 12.06.2015 в 10:15 ----------


apache2 -l
Compiled in modules:
core.c
mod_log_config.c
mod_logio.c
mod_version.c
prefork.c
http_core.c
mod_so.c

Ага, значит префорк.

К старому серверу еще есть доступ? Можете дать вывод этой же команды со старой машины?

admak:
У вас mysql загружен...

Веб сервер не ожидает ответа от MySQL. Обратите внимание на вывод top.

В каком режиме работает апач? Префорк или воркер? Можете показать вывод apache2 -l ?

Комментарии по поводу вывода vmstat:

1) Со свопом проблем нет вообще. Хотя он и большой, он не используется.

2) Количество обращений к диску ничтожно, так что с дисковой подсистемой ввода-вывода все ок. Кроме этого, процессы ничего "не ждут" (согласно top нет процессов в состоянии "D" или каком либо другом - все в "R")

3) Однако видим 93 активных процесса, ожидающих своей очереди на выполнение. Это многовато. Можем попробовать подредактировать конфиг апача (но для этого см. вопрос выше - префорк или воркер)

Какие проблемы с системой помимо того, что высокий load average? Время ответа веб сервера возросло? Ваш load average высокий из-за того, что много процессов одновременно находятся в состоянии "R" (running, т.е. выполняются). Вывод vmstat можете пожалуйста показать?

Так же хочу заметить что у вас 32Gb выделено под файл подкачки. Зачем? Что будет, если ваш файл подкачки заполнится хотя бы на 25% ? Представляете как все будет "тормозить", когда система начнет ворочать гигабайты данных, перемещая данные из оперативной памяти в подкачку? Либо выключите своп вообще (зачем он нужен?), либо уменьшите его до 1Gb.

Так можно найти файлы размером больше 300 мегабайт. Соответственно, можете определить какие файлы сколько весят. Вместо "/" ставьте интересующий вас раздел.

sudo find -L / -type f -size +300M -exec du -sh {} \;

Кроме того, файлы (особенно если это логи), могут удерживаться каким то процессом. Например, достаточно запустить tail -f на каком то лог-файле и он "застрянет", т.е. никогда не будет очищен (сжат) системой ротации логов. В этом случае вам может помочь утилита lsof:

sudo lsof -L /var/logs

Она покажет какие процессы в данный момент какие файлы "удерживают". Что бы освободить файл, нужно просто убить соответствующий PID. Либо послать kill -1 этому процессу, если он поддерживает этот сигнал... Не уверен что вы зайдете так далеко, но возможно эти советы будут полезны.

Кстати, кроме логов место могут съедать core.dump файлы, если какое то приложение постоянно падает. Вы не указали какой у вас дистрибутив ОС, но вот "общий подход" к вопросу: http://www.unixmen.com/how-to-enable-core-dumps-in-rhel6/

Всего: 250