Назад | Перейти на главную страницу

Высокая нагрузка на сервер mysql, вывод sar

У меня есть сервер MySQL, который должен работать лучше, чем кажется. Мы запускаем ubuntu на кластере Amazon Cluster Compute (cc1.4xlarge)

Linux ip-10-0-1-60 3.2.0-25-virtual #40-Ubuntu SMP Wed May 23 22:20:17 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Distributor ID: Ubuntu
Description:    Ubuntu 12.04 LTS
Release:    12.04
Codename:   precise

У меня есть несколько выходных файлов из sar, которые я не совсем понимаю, как интерпретировать. Например, я запустил:

# Individual block device I/O activities
sar -d 1 180 > logs/block_device_io.log &

что дало мне то, что выглядело как действительно высокое использование моего диска (оказывается, это блочное устройство сопоставляется с

/dev/xvdh on /var/lib/mysql type ext4 (rw,_netdev)

Вывод из моего журнала:

10:48:59 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await       svctm     %util
10:49:00 PM dev202-16      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:49:00 PM dev202-32      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:49:00 PM    dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:49:00 PM dev202-112   1008.00  31040.00   1416.00     32.20      1.02      1.01      0.89     90.00
10:49:00 PM dev202-80      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

Я ошибаюсь, думая, что это проблема? У меня он выше 90% почти все время, когда мы видим медлительность. Или это просто означает, что MySQL делает то, что должен делать?

Я ошибаюсь, думая, что это проблема? У меня он выше 90% почти все время, когда мы видим медлительность.

Не ошибаюсь, это определенно твоя проблема. Дисковый ввод-вывод - это узкое место вашей производительности, и хотя я не думаю, что вы предоставили нам достаточно информации, чтобы рассказать, как это исправить, если вы хотите повысить производительность, вам нужно либо снизить нагрузку на диски вашего экземпляра, либо увеличьте количество дисковых операций ввода-вывода, имеющихся в распоряжении вашего экземпляра. (Честно говоря, я понятия не имею, как это сделать с виртуальной машиной Amazon EC2.)