Mysql + PHP docker скорость?

Всем привет, есть такая проблема, MySQL в докере медленнее чем на железе, сперва грешил на сеть, думал что приложение из контейнера с задержками общается с другим контейнером или с хостом, но дело было в том, что на хосте стояла версия 8.0, на ней просадка на 5.7 быстрее, а на MariaDB еще быстрее.
По крайней мере когда нагрухка не хайлоад - 8.0 или равен или отстает от 5.7. Но сейчас не о том.

Поставил сперва на железо php и mariadb, около 2.9сек время выполнения 260 запросов + неких обработок небольших...
Поставил PHP в докер, оставил mariadb на хосте, PHP на докер, ну около 3.0-3.1 сек, вполне допустимый оверхед.

Но когда в докере запускаю MariaDB, то скорость падает, время около 3.9-4 сек.
Что интересно, вчера я в PHP контейнере контейнере сделал docker exec -it sh... Поставил MariaDB той же версии, запустил, и тоже самое что и в соседнем контейнере.

Я пробовал как и стандартными volume и пробрасывать в контейнер локальную папку -v, ничего не меняется, тут либо какая-то разница когда в докере mysqld стартуется, а на хосте служба системная или какие-то настройки не цепляются или под alpine и ubuntu сборки не самые лучшие. Почитал в интернете, некоторые тоже пишут что в докере пиковые скорости бд просаживаются.

Никто не сталкивался?
  • Вопрос задан
  • 1079 просмотров
Пригласить эксперта
Ответы на вопрос 2
@kuzyaev
Здесь нужно провести более подробные тестирования.
В данном случае нужно посмотреть как ты подключаешься к mysql.
Ведь если мы поставим на хост mysql-server и будем подключаться через localhost (мы потеряем часть времени на поиск ip адреса), если мы укажем 127.0.0.1 то работа будет быстрее.
Тоже самое с docker. При указании mysql в качестве адреса подключения, он будет искать его ip адрес (можно попробовать указать его вручную при подключении).
---
По моим предположениям данное увеличенное время = поиск ip адреса mysql сервера.
Ответ написан
@PavelBelyaev Автор вопроса
Нашел испытания от перконы, реально есть такое как оверхед сетевой, даже если все на одном компе... Мои тесты конечно накладывают еще производительность вычислений, и вероятно у меня с базой не столь много работает сколько обработки, генерация всяких xml... Если бы я только с базой работал, то скорей всего получил аж трехкратное замедление... https://www.percona.com/blog/2016/02/05/measuring-...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы