|
|
|
Падение производительности Mysql при работе по сети
|
|||
|---|---|---|---|
|
#18+
Добрый день! Столкнулся с такой ситуацией. Есть два Web-портала с одинаковой CMS и базой MySQL В обоих случаях для БД используется отдельный сервер. У одной ( условно назовём её старой) производительность нормальная, вторая ( условно новая) ощутимо медленнее, при том, что на новой железо даже немного мощнее. Начинаю тестировать Mysql ( sysbench-ем). Локально ( чарез сокет) на старой системе получаю ~1000 транзакций в секунду, на новой >1200. Когда же запускаю тест с web сервера - картина меняется. Старая система даёт ~ 800 транзакций в секунду ( падение 20%, по сравнению с локальным тестом через сокет), новая же даёт ~400 транзакций ( падение в 3 раза! ). tcpdump и другие исследования показывают, что ошибок в сети нет, производительность сети отличная ( все сервера - это виртуалки на одной host-машине, iperf показывает ~20гбит ). Единственное что нашёл, это разная сетевая задержка. На старой системе простейший тест ping-ом с web на db сервер даёт: rtt min/avg/max/mdev = 0.123/0.145/0.190/0.017 ms а на новом: rtt min/avg/max/mdev = 0.117/0.298/0.629/0.072 ms тоесть в среднем в 2 раза больше: 0.145 и 0.298 msec Вопрос собственно в том, может ли такое отличие сетевой задержке привести к такому падению производительности? С уважением, Алексей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 15:08 |
|
||
|
Падение производительности Mysql при работе по сети
|
|||
|---|---|---|---|
|
#18+
zav2005может ли такое отличие сетевой задержке привести к такому падению производительности?Конечно, может... Ну прикинь сам... Старая система - 800 транзакций, 0,145мс на транзакцию, 2 пакета (запрос и ответ), всего 0,145*2*800~232мс задержек в интерфейсе. Новая система - 400 транзакций, 0,298мс на транзакцию, 2 пакета (запрос и ответ), всего 0,298*2*400~238мс задержек в интерфейсе. Ну а остальное время уходит собственно на обработку сервером запросов (если нет задержки на клиенте меж транзакций). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 16:20 |
|
||
|
Падение производительности Mysql при работе по сети
|
|||
|---|---|---|---|
|
#18+
Запрет резолвинга хостов ключиком --skip-name-resolve (или в конфиге аналогично). Сравните эту настройку на новом и на старом сервере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 16:24 |
|
||
|
Падение производительности Mysql при работе по сети
|
|||
|---|---|---|---|
|
#18+
Ну во-первых, ping даёт задержку пары запрос-ответ, умножать на 2 не нужно. Итого, в обоих случаях на сетевые задержки приходится ~120 мсек. За остальные 880 мсек одна система выполняет 400, а другая 800 запросов? По такой логике так получается? Другое дело, что в каждой транзакции может быть больше чем 1 запрос-ответ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 16:47 |
|
||
|
Падение производительности Mysql при работе по сети
|
|||
|---|---|---|---|
|
#18+
vkle, Проверил, как раз на новом в конфиге есть skip-name-resolve, а на старом нет... Все права доступа прописаны по IP на обоих системах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 16:50 |
|
||
|
Падение производительности Mysql при работе по сети
|
|||
|---|---|---|---|
|
#18+
zav2005Вопрос собственно в том, может ли такое отличие сетевой задержке привести к такому падению производительности? Разумеется. В общем случае sql-приложения значительно более уязвимы чем веб и прочие другие. Нельзя выполнять следующий запрос пока не будет получен ответ на предыдущий. И не важно сколько у вас там пропускной способности. автор, производительность сети отличная ( все сервера - это виртуалки на одной host-машине, iperf показывает ~20гбит ). А вы попробуйте контейнеризацию вместо виртуализации. Любую удобную вам реализацию. Хотя мне эмпирически наиболее оптимальным кажется openvz. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 22:35 |
|
||
|
Падение производительности Mysql при работе по сети
|
|||
|---|---|---|---|
|
#18+
netwindА вы попробуйте контейнеризацию вместо виртуализации. Любую удобную вам реализацию. Хотя мне эмпирически наиболее оптимальным кажется openvz. Не могу, к сожалению. Порталы просто обслуживаем, доступа к операционке хост машины нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 10:31 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39332973&tid=1831279]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
197ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 514ms |

| 0 / 0 |
