Как стать автором
Обновить

Поговорим о средних показателях

Время на прочтение4 мин
Количество просмотров3K

Возможно, самая важная часть нашей работы — это осмысление данных, в первую очередь чисел. Как правило, мы смотрим на показатели, которые получаем благодаря инструментам нагрузочного тестирования, мониторингу серверов и приложений, логам или запросам к базе данных. Цель состоит в том, чтобы понять поведение системы, но иногда эта информация вводит нас в заблуждение.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии0

Нагрузочное тестирование выполнять сложно, а инструменты далеки от совершенства. Почему?

Время на прочтение5 мин
Количество просмотров12K


Если вы создаёте приложение, которое должно масштабироваться — а все мы надеемся, что наши приложения будут расти — то в определённый момент нам приходится разбираться, может ли оно это делать на самом деле. Именно тогда на помощь приходит нагрузочное тестирование: если вы хотите узнать, справится ли ваше приложение с крупными масштабами, то мы просто генерируем эти масштабы и проверяем! Звучит достаточно просто.

Но потом мы пробуем действительно сгенерировать нагрузку. Это делается легко, только если ваше приложение ужасно простое, ведь тогда можно использовать что-нибудь типа Apache JMeter для генерации повторяющихся запросов. Если у вас это получится, то я вам завидую: все системы, с которыми мне приходилось работать, сложнее и требовали более изощрённой схемы тестирования.

Если ваше приложение становится чуть сложнее, то вы переходите к инструментам наподобие Gatling. Они позволяют симулировать виртуальных пользователей, выполняющих различные сценарии, что намного полезнее, чем простая осада одного или нескольких URL. Но даже этого недостаточно, если вы пишете приложение, использующее одновременно WebSockets и HTTP-вызовы в течение долговременной сессии, а также требующее повторения по таймеру определённых действий. Возможно, я серьёзно недоглядел чего-то в документации, но мне не удалось найти способа, допустим, настроить периодическое событие, запускаемое каждые 30 секунд и выполняющее определённые действия при ответе на сообщение WebSocket, а также производящее действия по HTTP, и всё это в рамках одной HTTP-сессии. Я не нашёл такой возможности ни в одном инструменте нагрузочного тестирования (и именно поэтому написал на работе свой собственный инструмент, который надеюсь выложить в open source, если найду время на подчистку кода и отделения его от проприетарных частей).
Читать дальше →
Всего голосов 27: ↑26 и ↓1+25
Комментарии17

Атака не клонов, или Генерация и анализ тестовых данных для нагрузки. Часть 1

Время на прочтение6 мин
Количество просмотров3.3K

Как добиться необходимого контроля, удобства и даже скорости при подготовке тестовых данных для микросервисов и тестов производительности? В каких случаях лучше не генерировать XML и JSON файлы с помощью конкатенации строк? Зачем анализировать статистику по SQL запросам?

Меня зовут Вячеслав Смирнов, и я ускоряю дистанционное банковское обслуживание юридических лиц, а еще поддерживаю чат QA — Load & Performance в Телеграм, где сообщество инженеров по тестированию производительности обсуждает тестирование нагрузки.

Статья получилась длинной, поэтому сегодня я расскажу про подготовку тестовых данных для тестирования производительности и про то, как с помощью SQL, Pandas и Java эти данные готовить. Поговорим про анализ метрик и логов с точки зрения данных и с использованием InfluxDB, Grafana и прочих инструментов, А ещё о том, как может выглядеть хороший отчет по системе, в которой много данных. В следующих частях перейду к генерации и анализу тестовых данных для нагрузки.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Как IT в финтехе готовится к сезону распродаж. Опыт ЮKassa

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров787

Привет, я Денис Лыков, IT-директор ЮMoney. Пока в России продолжается сезон больших распродаж, наш сервис ЮKassa работает под повышенной нагрузкой. Для нас очень важно, чтобы система была стабильной даже в пиковые моменты, ведь от этого напрямую зависит прибыль наших клиентов. Рассказываю, как IT в финтехе готовится к сезону скидок, какие могут возникнуть трудности и как с ними справиться.

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии2