РИТ++ 2017 завершён!

Как ускорить MySQL Handler Socket в 9 раз посредством репликации в TarantoolБазы данных

Доклад принят в программу конференции
Александр Яковлев
ex. Ситимобил

Работает в компании Ситимобил уже 2 года.

Тезисы

Мы использовали MySQL Handler Socket в качестве интерфейса к данным пользователей на высоконагруженном проекте Wamba.ru. Почему Handler Socket? Потому что стандартный SQL-интерфейс не выдерживал наши нагрузки. Время шло, нагрузки росли, и в итоге и HandlerSocket перестал справляться. Мы только успевали доставлять и доставлять реплики MySQL, чтобы распределять увеличивающуюся нагрузку между ними.

Параллельно у нас возникла другая проблема - нам отчаянно требовался функционал MySQL 5.7 для других менее нагруженных частей нашего проекта, при этом в нем поддержка Handler Socket была выпилена. В итоге, у нас двойная проблема - Handler Socket сам по себе недостаточно резв на наших растущих нагрузках, стандартный SQL еще хуже, надо мигрировать на 5.7, сделав все еще хуже, чем с Handler Socket. Если бы мы мигрировали на 5.7 и переписали бы код на SQL, то это по нашим прогнозам привело бы к самой массовой закупке серверов в истории нашего проекта.

К счастью, мы нашли способ решить эту проблему одним выстрелом и без закупок вообще. Наоборот, даже высвободили железо и не знаем, куда его девать. Как нам это удалось? Узнаете в моем докладе.

Другие доклады секции Базы данных