Мы в компании Аквариус стремимся к тому, чтобы тестирование проходило без активного участия человека. Поэтому, продолжая предыдущую нашу статью про автоматизированное тестирование BMC: Тестирование BMC: Автоматизировать! Нельзя все руками, я расскажу про универсальное решение, которое мы создаем для получения показателей производительности BMC. Зачем это нужно и как мы пытаемся применять накопленный опыт в других направлениях, например при тестировании производительности нового для компании направления — СХД (Система Хранения Данных).
Рубрика «нагрузочное тестирование»
Тестирование BMС: поговорим о нагрузочном тестировании
2024-11-15 в 11:04, admin, рубрики: BMC, hardware, Microservices, performance, автотестирование, нагрузочное тестированиеКак мы ловили «русских хакеров», которые нечаянно положили сервер заказчиков
2024-08-21 в 12:53, admin, рубрики: ddos, нагрузочное тестирование, нагрузочное тестрование, нагрузочные тестыПривет! Меня зовут Евгений Гущин, я — исполнительный директор Smartup. За 20 лет работы в IT у меня было несколько забавных случаев. Сегодня расскажу, как мы героически поймали «русских хакеров».
Нагрузочное тестирование в разработке веб-приложений
2024-08-15 в 10:43, admin, рубрики: Apache JMeter, нагрузочное тестирование, производительность системы, тестирование веб-приложенийОдним из критически важных этапов разработки веб-приложений является нагрузочное тестирование. Этот процесс необходим для выявления потенциальных узких мест в системе, а также для обеспечения того, что приложение способно выдерживать предполагаемое количество пользователей и запросов без ухудшения производительности.
Введение в нагрузочное тестирование
Нагрузочное тестированиеЧитать полностью »
Захватывающая ловля багов, которые портили работу Unbound
2023-04-20 в 8:06, admin, рубрики: bpftrace, bug, DNS, gdb, load testing, Unbound, баги, Блог компании Яндекс, высокая производительность, нагрузочное тестирование, Серверное администрированиеПривет, меня зовут Сергей Качеев, я старший разработчик в отделе сетевой инфраструктуры Яндекса. Сегодня я расскажу целый сетевой детектив о том, как мы искали баг, который убивал DNS сервер Unbound. Приготовьтесь, он будет долгим.
Инструменты с открытым исходным кодом для нагрузочного тестирования
2022-11-04 в 18:17, admin, рубрики: load qa, qa tools, нагрузочное тестирование, стенды для тестирования, тестирование, Тестирование веб-сервисовТестирование — неотъемлемая составляющая разработки программного обеспечения. Независимо от того, насколько хорошо вы пишете код или насколько тщательно продуманным может быть первоначальный процесс тестирования, всегда есть вероятность, что что-то может ускользнуть.
Как мы проводили нагрузочное тестирование видеосвязи для встреч на 100 человек
2022-02-10 в 6:01, admin, рубрики: Блог компании Skyeng, видеоконференцсвязь, видеосвязь, нагрузочное тестирование, производительность, сервер, соединение, стриминг, Тестирование веб-сервисов, трафикКогда вы добавляете новых пользователей, а трафик уменьшается без снижения качества видео в каждом из каналов, — либо случилось чудо, либо где-то теряются пакеты.
У нас в Skyeng есть групповые уроки английского, они ограничены 10 участниками. Поскольку мы не используем промежуточного преобразования сигнала, а подключаем каждого пользователя, используя SFU, получается, что каждый генерирует один исходящий поток и принимает девять входящих потоков трафика. Также наши SFU сервера записывают уроки на случай каких-то сложностей с учителем (то есть для контроля качества) и для анализа различных показателей урока.
Мы учим не только английскому, но и математике, и другим предметам. Вдруг выяснилось, что для ряда занятий нужно собирать больше 10 человек, и при этом нужно иметь возможность разговаривать с каждым. Понятно, что учителю можно дать толстый канал в 1 Мбит/с, а ученикам — каналы потоньше: в 144p или 240p, например, но всё равно квадратичный рост трафика выглядел угрожающе.
Я решил протестировать Janus-видеосервер на 100 пользователях в канале и посмотреть, как быстро он упадёт. Ситуация осложнилась тем, что справки про это нет, примеров нет, и готовых решений тоже пока нет. Поэтому я и пишу.
Вы же тоже хотите посмотреть, как быстро он упадёт, да?
Читать полностью »
Нагрузочное тестирование выполнять сложно, а инструменты далеки от совершенства. Почему?
2021-01-07 в 9:45, admin, рубрики: Apache JMeter, gatling, высокая производительность, нагрузочное тестирование, нагрузочные тесты, Тестирование IT-систем, Тестирование веб-сервисов
Если вы создаёте приложение, которое должно масштабироваться — а все мы надеемся, что наши приложения будут расти — то в определённый момент нам приходится разбираться, может ли оно это делать на самом деле. Именно тогда на помощь приходит нагрузочное тестирование: если вы хотите узнать, справится ли ваше приложение с крупными масштабами, то мы просто генерируем эти масштабы и проверяем! Звучит достаточно просто.
Но потом мы пробуем действительно сгенерировать нагрузку. Это делается легко, только если ваше приложение ужасно простое, ведь тогда можно использовать что-нибудь типа Apache JMeter для генерации повторяющихся запросов. Если у вас это получится, то я вам завидую: все системы, с которыми мне приходилось работать, сложнее и требовали более изощрённой схемы тестирования.
Если ваше приложение становится чуть сложнее, то вы переходите к инструментам наподобие Gatling. Они позволяют симулировать виртуальных пользователей, выполняющих различные сценарии, что намного полезнее, чем простая осада одного или нескольких URL. Но даже этого недостаточно, если вы пишете приложение, использующее одновременно WebSockets и HTTP-вызовы в течение долговременной сессии, а также требующее повторения по таймеру определённых действий. Возможно, я серьёзно недоглядел чего-то в документации, но мне не удалось найти способа, допустим, настроить периодическое событие, запускаемое каждые 30 секунд и выполняющее определённые действия при ответе на сообщение WebSocket, а также производящее действия по HTTP, и всё это в рамках одной HTTP-сессии. Я не нашёл такой возможности ни в одном инструменте нагрузочного тестирования (и именно поэтому написал на работе свой собственный инструмент, который надеюсь выложить в open source, если найду время на подчистку кода и отделения его от проприетарных частей).
Читать полностью »
Открытые бенчмарки для нагрузочного тестирования серверов и веб-приложений
2019-11-04 в 19:31, admin, рубрики: 1cloud, linux, бенчмаркинг, Блог компании 1cloud.ru, нагрузочное тестирование, подборка инструментов, Разработка веб-сайтовЭто — подборка утилит, составленная на основе рекомендаций резидентов Hacker News и GitHub. В список вошли: Locust, Vegeta, Slow_cooker, k6 и Siege. Ими пользуются инженеры из DICE, EA и Buoyant, а также разработчики Kubernetes и Load Impact. Расскажем об этих инструментах.
Достоверный нагрузочный тест с учётом непредвиденных нюансов
2019-08-08 в 4:29, admin, рубрики: AWS, jmeter, jmeter cluster, Listener, miro, nancy_cli, pg_replay, postgresql, prometheus listener, realtimeboard, spot instances, taurus, Анализ и проектирование систем, Блог компании Miro, нагрузочное тестирование, Тестирование IT-систем, Тестирование веб-сервисов, Управление продуктомМы задумались о построении инфраструктуры больших нагрузочных тестов год назад, когда достигли отметки в 12K онлайн-пользователей, работающих в нашем сервисе одновременно. За 3 месяца мы сделали первую версию теста, которая показала лимиты сервиса.
Ирония судьбы в том, что одновременно с запуском теста мы достигли лимитов на проде, в результате чего сервис упал на 2 часа. Это дополнительно стимулировало нас начать двигаться от проведения тестов от случая к случаю к созданию эффективной нагрузочной инфраструктуры. Под инфраструктурой я подразумеваю все инструменты для работы с нагрузкой: инструменты для запуска и автозапуска, кластер для подачи нагрузки, кластер, аналогичный проду, сервисы для сбора метрик и для подготовки отчётов, код для управления всем этим и сервисы для масштабирования.
uWSGI в помощь метрикам. Доклад Яндекса
2019-08-06 в 12:41, admin, рубрики: postgresql, python, redis, uwsgi, wsgi, Блог компании Яндекс, веб-аналитика, метрики, нагрузочное тестирование, Тестирование веб-сервисов, яндекс.танкНа днях состоялся Moscow Python Meetup #66 — сообщество продолжает обсуждать актуальные инструменты, которые усиливают язык и адаптируют его к разным окружениям. В том числе на митапе прозвучал и мой доклад. Меня зовут Наиль, я делаю Яндекс.Коннект.
Рассказ, который я подготовил, был посвящён uWSGI. Это многофункциональный сервер веб-приложений, а каждое современное приложение сопровождается метриками. Я постарался показать, как возможности uWSGI способны помочь в сборе метрик.