• 18830
  • 16
  • 3
Нравится блог?
Подписывайтесь!

mysql-proxy тестирование под мелкоскопом

mysql-proxy — практически идеальное решение для тех, кому нужен дешевый шардинг без переписывания приложений, а также хостинг провайдерам, которым сложно контролировать криворуких клиентов :) но хотелось бы вынести mysql или снизить нагрузку на СУБД без лишних контактов с клиентами.

Итак, есть задача, облегчить жизнь mysql серверу. Доступное решение — master-slave репликация. Всё замечательно, когда у нас есть программисты, которые могут переписать приложение на использование нескольких серверов СУБД, но как быть, если таковых нет? Тут на помощь нам приходит mysql-proxy. Работая прозрачно для клиента, mysql-proxy умеет проксировать запросы нескольких slave & master серверов.

далее будет описание тестов

Опущу в данном топике разворачивание master-slave репликации, документации море, рекомендую только пропускать ту, которая советует копировать файлы таблиц, опция --master-data в mysqldump давно уже присутствует.

Итак, была развернута master-slave репликация с одним мастером и тремя слейвами. Задача, проверить оверхед mysql-proxy и поддержку failover.

Для проверки, было использовано два скрипта, первый производил вставку 1000 строк в БД без использования индексов, второй производил чтение таблицы, кэш исключался, скрипт запускался несколько раз, брались средние значения.

Производилось несколько тестов.

Тест 1 — вставка в БД

а) напрямую в БД (результат берется за 100%) — 100%

б) через mysql-proxy (один мастер) — 69%

Тест 2 — выборка из БД

а) напрямую из БД (результат берется за 100%) — 100%

б) через mysql-proxy (только один слейв) — 75%

Тест 3 — выборка из БД

а) напрямую из БД (результат берется за 100%) — 100%

б) через mysql-proxy (три слейва) 70%

Тест 4 — выборка из БД

а) напрямую из БД (результат берется за 100%) — 100%

б) через mysql-proxy (два из трех слейвов были погашены для проверки failover) 8%

График:

Тестовые скрипты вызывались

ab -n 1000 -c 1 скрипт

и ab -n 1000 -c 10 скрипт

между вызовами была минутная пауза, отбрасывались крайние значения, среднее для коннекта без mysql-proxy бралось за 100%

Тест 1 проводился скриптом:

<?php

for ($i = 1; $i <= 1000; $i++) {

$link = new mysqli(«localhost», «login», «pass», «base»);

$link->query(«INSERT INTO test `SET`...»);

mysqli_close($link);

}

?>

перед его выполнением выполнялся truncate

Тесты 2 — 4

<?php

for ($i = 1; $i <= 1000; $i++) {

$link = new mysqli(«localhost», «login», «pass», «base»);

$q=$link->query(«SELECT * FROM `test`»);

while($r=$q->fetch_assoc()) {

print_r($r);

}

mysqli_close($link);

}

?>

Bыводы:

Если тест1 вопрос не вызывает, а тест 2 и 3 в случае сложных запросов и использования индексов будут совершенно другими при реальной нагрузке и тоже понятны, то результаты теста 4 меня немного в недоумение вводят.

Конфиг mysql-proxy в тесте4

cat /etc/default/mysql-proxy

ENABLED=«true»

OPTIONS="

--proxy-address=localhost:3309

--proxy-read-only-backend-addresses=workserver1:3306

--proxy-read-only-backend-addresses=downserver1:3306

--proxy-read-only-backend-addresses=downserver2:3306

--proxy-backend-addresses=workserver1:3306

--proxy-skip-profiling

"

Ваши мысли?

16 августа 2010, 21:07
1398

Загрузка...

Комментарии

Прочитала - оч понравилось, спасибо.
Dune HD Base 3.0 500Gb

Оставьте свой комментарий

Спасибо за открытие блога в Yvision.kz! Чтобы убедиться в отсутствии спама, все комментарии новых пользователей проходят премодерацию. Соблюдение правил нашей блог-платформы ускорит ваш переход в категорию надежных пользователей, не нуждающихся в премодерации. Обязательно прочтите наши правила по указанной ссылке: Правила

Также можно нажать Ctrl+Enter

Популярные посты

Я был удивлён, что в Азербайджане есть Казахский район

Я был удивлён, что в Азербайджане есть Казахский район

Мне как казаху по национальности очень хотелось туда попасть. Оказалось, что климат там намного суровей и люди, говорят, суровые и воинственные. Казах – город на западе Азербайджана...
alidimash
18 янв. 2017 / 21:50
  • 30611
  • 18
Многочасовые очереди, смерти в ЦОНах: почему вопросы об этом ставят парламентариев в тупик?

Многочасовые очереди, смерти в ЦОНах: почему вопросы об этом ставят парламентариев в тупик?

Ожидали ли депутаты Мажилиса всего этого? Как планировали этот процесс регистрации, и обсуждали ли его, прежде чем одним нажатием кнопки принять нормы с такими абсурдными временными рамками?
openqazaqstan
17 янв. 2017 / 14:32
  • 5085
  • 22
Астана глазами алматинских девушек. Как при таких погодных условиях можно выжить?

Астана глазами алматинских девушек. Как при таких погодных условиях можно выжить?

В спальных районах, и в высотных домах сквозь стены слышно завывание ветра. В особенности ночью. Такие звуки, я слышала, пожалуй, только по телевизору, в фильмах про метель.
Naomi_K
20 янв. 2017 / 12:36
Сильное ДТП произошло в Алматы на Тимирязева-Байзакова

Сильное ДТП произошло в Алматы на Тимирязева-Байзакова

NoComment (c) Официальный слоган EuroNews. Катастрофа на алматинской утренней трассе началась с того, что водители «Ниссана» и микровена ожидали сигнала светофора на запад по Тимирязева...
ibestreporter
17 янв. 2017 / 22:52
  • 3901
  • 5
Вейпинг безопасен? Эндрю Холл из США тоже так считал, пока что-то не пошло не так

Вейпинг безопасен? Эндрю Холл из США тоже так считал, пока что-то не пошло не так

Эндрю Холл из США считал, что вейпинг безопасен и усиленно убеждал в этом близких. Но как-то раз что-то пошло не так. Это результат взрыва хипстерского устройства - выбило 7 зубов + ожоги и раны...
Maxambet
17 янв. 2017 / 16:28
  • 3983
  • 52
Это поколение просрет страну. 20-летняя молодежь представляет из себя сказочных эльфов

Это поколение просрет страну. 20-летняя молодежь представляет из себя сказочных эльфов

Смотря в очередные пустые глаза вчерашнего студента, приходящего устраиваться на первую работу страшно становится. Потому что сравниваю с теми же китайскими студентами, которые готовы выгрызать себе мечту.
mbaitykov
18 янв. 2017 / 11:34
Становится хуже, но как-то постепенно. Беднеем, но тоже как-то не разом

Становится хуже, но как-то постепенно. Беднеем, но тоже как-то не разом

Помню, когда я уезжал и Казахстана, тут было довольно прилично, даже не смотря на то, что жить было невыносимо. Но прилично так. Мусора было меньше. Дороги чистили, вони почти не было. Да и в остальном тоже норм.
shootnix
18 янв. 2017 / 12:49
  • 3734
  • 35
Любимый Тайланд. Правящий король называет Паттайю «черным пятном на репутации страны»

Любимый Тайланд. Правящий король называет Паттайю «черным пятном на репутации страны»

Тайланд мы впервые посетили в декабре 2012 года. Полученные эмоции настолько были яркими, что в конце 2015 года мы решили еще разок слетать в Тайланд. Вспоминая Тай, первое о чем я думаю - горячий...
zhainar_d
17 янв. 2017 / 11:11
  • 3600
  • 24
Поправки в стиле «1937» не прошли. МИК отказалось от запрета анонимных комментариев

Поправки в стиле «1937» не прошли. МИК отказалось от запрета анонимных комментариев

Сегодня Министерство информации и коммуникаций исключило из законопроекта предложенные ранее нормы, предполагавшие «деанонимизацию» комментаторов и регистрацию блогеров.
openqazaqstan
20 янв. 2017 / 12:12
  • 2449
  • 22