Онлайн митап от ВсеИнструменты.Ру о PHP, MySQL, нагрузках и асинхронности
Компания ВсеИнструменты.Ру основана в 2006 году, и сейчас уже входит в топ-10 крупнейших интернет-магазинов РФ, №1 в сегменте DIY. Ежемесячная аудитория сайта 18-19 млн. человек, а наша IT команда на сегодняшний день насчитывает более 200 разработчиков. У нас накопилось много интересного опыта, которым мы бы хотели поделиться и обсудить его с аудиторией.
Темы, о которых хотелось бы поговорить, конечно же невозможно уместить в один митап, поэтому эту встречу мы посвятим опыту внедрения внедрения микросервисов и выбор между PHP и Go для этого, про эксплуатацию MySql на постоянно растущих нагрузках, а также про асинхронный PHP, его настоящее и будущее.
Дата: 12 февраля 17:00
Доклады
Илья Штрикуль. "Best Practice из Go для PHP".
У нас был монолит с десятилетней историей, десятки разработчиков и постоянно растущие объемы в e-commerce-проекте с миллионом товаров и тысячами одновременных клиентов онлайн.
Доклад о том, как мы подключались к микросервисному тренду, чтобы решить проблемы масштабирования и роста сложности задач в условиях хайлоада. История от самых первых споров, какой стек выбирать, до овер-дедлайнового последнего ночного деплоя с шампанским и сигарами. Как интегрировали разработанные микросервисы с PHP-монолитом, пробовали разные шины сообщений и перебрали 3 стандарта обмена данными, но в итоге все же получили желаемый результат.
Будет полезно тем, кто еще думает о выносе частей своего проекта в микросервисы, либо только начинает это делать.
Даниил Каменский. "Обходы проблем MySQL в условиях HighLoad"
Наша MySQL-база — одна из самых нагруженных частей проекта, и почти каждый запрос в той или иной степени проходил оптимизацию. Мы используем Doctrine и многие проблемы работы с БД увеличиваются кратно. За годы работы с одной огромной базой у нас накопилось немало опыта борьбы с блокировками, deadlock’ами, и обходов багов самого MySQL в условиях ~15000 qps/rps и таблицах на сотни миллионов записей. Что получилось победить, а что нет, и как обошли в команде с десятками разработчиков, ежедневно пишущих SQL-запросы.
Александр Макаров, Сергей Жук, Илья Штрикуль, Антон Губарев, Максим Масюкевич. "Асинхронный PHP, настоящее и будущее"
PHP сообщество давно просит разработчиков о внедрении асинхронности, но пока что воз и ныне там. Уже даже появилось немало сторонних решений, уже успевшими стать популярными, например Swoole, AmPHP, ReactPHP. Кто-то использует их в продакшене и решает этим свои задачи. Однако, не меньше тех, кто считает, что для асинхронности лучше использовать более подходящие инструменты, например Go. И даже некоторые разработчики самого PHP говорят, что асинхронность в языке не нужна ;)
Обсудим аргументы за и против асинхронности в PHP, и имеющихся у нас сейчас решений для этого. Стоит ли внедрять асинхронные PHP фреймворки и завязывать на них свои проекты, насколько прозрачно их будущее.
Участники
Сергей Жук @seregazhuk Skyeng. Автор блога и книг про асинхронный PHP, ведет подкаст "Между скобок".
Александр Макаров @SamDark Yii. Руководит программным комитетом PHP Russia и разработкой Yii3
Илья Штрикуль. ВсеИнструменты.Ру. Руководитель RnD. Участвовал во внедрении микросервисной архитектуры в компании.
Даниил Каменский @deadkaDBA. Более 8 лет опыта работы с BigData в MySQL, PostgreSQL. Один из членов команды sqlinfo.ru
Антон Губарев. ВсеИнструменты.Ру @antgubarev Архитектор, ведет телеграм канал "DevLead". Ведущий мероприятия.
Максим Масюкевич @mmasiukevich10 лет PHP, автор php-service-bus/service-bus
Расписание
17:00 Короткое вступительное слово
17:10 Илья Штрикуль. Доклад "Best Practice из Go для PHP".
17:40 Вопросы к докладчику
18:00 Даниил Каменский. Доклад "Оптимизация MySQL в условиях HighLoad"
18:30 Вопросы к докладчику
18:40 Перерыв
18:55. Холивар про асинхронность в PHP