On 03/14/14 02:25, greenh wrote:
Пытаюсь все это перенести на freebsd сервер с 2 по CPU E5-2420 (24 ядра) и тех
же 16 гиг (то есть машинка существенно более мощная)

Какой CPU был на старой машине не указано, и не факт что E5-2420 быстрее.
Кинь ссылку на ark.inetl.com для старого CPU.
Кроме CPU еще и память может работать на другой частоте или иметь другие 
задержки.

базу кладу на софтварный raid-0
nginx+php_fpm через unix socket

Для теста включаю проксирование через старый сервер на новый и получаю
1. первые 2-3 минут база отъедает до 1500% cpu, затем РЕЗКО падает до 70-100
2. LA в районе 2
нагрузка на винты (судя по gstat) около нуля
Сайты отдаются существенно медленее (ожидание до открытия до 7-9 секунд против
2-3 на старом).
3. Среднее потребление user cpu > 20-30% (в основном php) и куча долгих запросов
к базе  (по 1-2 секунды) чего на старом сервере нет.

А почему ты думаешь, что тормозит именно mysql а не что то ещё?

Например разница может быть из за отсутствия persisten connections на одном из серверов. Или кэширование данных в memcached (если есть) забыли включить на новом сервере.

Если процессор загружен на 30% а диски совсем не загружены и при этом сервер отвечает очень медленно, то что наверняка настроено не правильно.

Что касается mysql то:
1. нужно строить в мониторинге графики разных параметров mysql, включая index cache hit rate. Я когда использовал mysql строил rrd-графики с помощью mysqlstat (но проект похоже не сдох - www.mysqlstat.org не работает). Наверняка есть 1001 софтина помимо mysqlstat, чтобы строить подобные графики.

И потом нужно сравнить графики на двух серверах.

2. Можно поставить логгирование запросов дольше 1 секунды и потом посравнить slow log через pt-query-digest из percona-toolkit

Ответить