Конференция завершена. Ждем вас на TechLead Conf в следующий раз!

Прикладной DevOps: тестирование производительности

SRE-практики

Оптимизация производительности
Непрерывная интеграция
Тестирование новых продуктов

Доклад отклонён

Тезисы

*Описание*

**О чем будет доклад?**
В этом докладе я хочу поделится опытом построения тестового стенда для тестирования производительности load balancer разрабатываемого внутри компании.
Рассказать этапы становления и результаты каждого этапа, а так же моменты которые мы сделали и делать больше ни когда не будем.

**Заинтересует ли сказанное слушателей?**
Этот доклад заинтересует потому что я расскажу
- внедренние перформанс тестирования в CI pipeline
- внедрение анализ benchmark в CI pipeline
- переход к полуавтоматическому тестированию
- переход к тестированию в продакшн среде

*Вступление*

**DevOps как замена команды тестирования производительности.**
Безусловно иметь команду/отдел занимающийся тестированием производительности это жизненая необходимость для некоторых компаний, вместе с тем DevOps может взять этот пласт работы в свою сферу ответственности.

**Рождение DevOps**
Когда низы не хотя жить по старому, а верхи не могут жить по новому происходит революция. Так случилось у нас: разработчики хотели больше свободы для выражения идей и тестирования новых технологий, а ops не хотели брать за все это ответственность у нас родился DevOps.

*Основная часть*

**Performance testing in CI**
Первоначальная идея была внедрить тестирование производительности в CI pipeline.
Отдельный шаг CI pipeline выполнял тест производительности на master и dev branch.
По ходу теста собиралась статистика, далее происходил ее анализ с последующим репортом.

**Performance playground - боремся с feedback loop**
Тестировани в CI было интересным упражнением, вместе с тем скорость получения обратной связи оставляла желать лучшего. Тестирование любого маленького изменения требоало запуска CI pipeline, в котором раз за разом время тратилось на создание production окружения с чистого листа. Использовать предсозданный тестовый стенд оказалась гораздо более интересным решением.

**Тестирование в продакшн**
Performance playground позволил решить вопрос с тюнингом производительности и моментально проверять любую идею. Однако, аппетит растет во время еды. В какой то момент времени, стали появляться задачи требующие реального продакшн. И в этот момент времени, все уже созрели для того что бы дать аппрув делать тестирование в продакшн.

**Бонусы**
Работа над задачей тестирования производительности позволила нам внедрить интеграционное тестирование в стандартный CI pipeline
- использования snapshot продакшн окружения в CI
- внедрить проигрывание трафика как шаг CI pipeline
- тестирование идемпотентности изменений

*Заключение*
Упражнение с тестированием производительности имело колосальный эффект на развитие нашего отдела
- рождение и становление DevOps культуры
- утверждения CI pipeline как полноценного компонента в жизни разработки
- стандартизация CI pipeline для всех компонент и экспансия его в другие отделы
- и самое главное мы создали полноценное механизм интеграционног отестирования.
за 10-20 минут мы знаем как любой коммит интегрируется в существующую инфраструктуру
и как он повлияет на работу всех сервисов


Михаил работает системным архитектором в компании IPONWEB последнии 8 лет. По долгу своей службы, основной профиль деятельности находится на стыке Development и Operations. В связи с этим, непрерывно имеет дело с новыми BazWords, как в плане построения концепции внедрения, так и в плане продуктовой адаптации.
Более чем 15 летний опыт в разработке програмного обеспечения, помогает ему в этом техно-путешествии.

Эксперт в разработке програмного обеспечения с бесконечной внутренней энергий движущей проекты к цели.

IPONWEB

Видео