РАЗРАБОТКА

Perfscale 0.6 появился в NPM и добавил WebSocket

Perfscale 0.6 получил установку через NPM, поддержку WebSocket и AI-чат с MCP. Для команд нагрузочного тестирования это шаг к одному рабочему контуру.

✍️ Редакция iTech News | 25.07.2026 | ⏱ 4 мин | Источник: Habr / Новости
📦

Perfscale дорос до версии 0.6 и получил сразу три практических обновления: установку через NPM, поддержку WebSocket и чат с ИИ поверх собственных сценариев и MCP. Для команд, у которых нагрузочное тестирование давно не ограничивается HTTP, это уже не мелкое обновление, а попытка собрать в одном инструменте сценарии, метрики и разбор прогонов.

О релизе написал разработчик проекта, а затем пересказали профильные медиа. Самое приземленное изменение касается open source-версии: бинарники теперь доступны не только на GitHub, но и в NPM. Установить perfscale можно командой npm i -g @perfscale/exe. Для команд с инфраструктурой на Node.js это снимает лишний слой ручной возни с бинарными релизами.

Установка через NPM убирает лишний барьер

На бумаге публикация в NPM выглядит как еще один канал доставки. На практике именно на этом часто и ломается внедрение нагрузочных инструментов: как быстро поставить агент, как обновить его без ручной рутины и как держать версии под контролем в команде, где уже есть привычный стек пакетов.

В Perfscale это дополнили логикой self-update: если бинарник установлен через NPM, команда обновления учитывает этот способ установки и сообщает о новых версиях в реестре. При этом через NPM распространяется только open source-редакция, а приватный агент остается на стороне сервиса Perfscale. Разделение понятное и без попытки выдать облачную часть за локальную.

WebSocket сделали не галочкой, а набором шагов

Куда важнее другое: Perfscale теперь умеет работать с WebSocket. Для инженеров, которые тестируют подписки, потоковые события и долгоживущие соединения, это заметнее, чем сам релиз в NPM.

Поддержка устроена как набор отдельных шагов: std/ws-connect@v1, std/ws-send@v1, std/ws-recv@v1, std/ws-ping@v1 и std/ws-close@v1. То есть это не декоративная кнопка «включить WebSocket», а конструктор, где можно явно управлять соединением, читать сообщения до выполнения стоп-условия и получать ошибку, если ожидаемый ответ так и не пришел.

Такой подход ближе к реальным сценариям. В живой системе мало просто открыть сокет и отправить пакет. Обычно нужно дождаться осмысленного ответа приложения, а не самого факта, что соединение не развалилось.

Новые метрики считают не только транспорт, но и смысл ответа

Поверх WebSocket в Perfscale добавили как минимум три метрики: ws_msg_rtt как прикладной round-trip time от отправки сообщения до первого подходящего ответа, а также ws_msgs_sent и ws_msgs_received как показатели интенсивности обмена сообщениями. Для ws_msg_rtt в панели показываются p50, p95 и max.

Это разумный выбор. Для WebSocket мало смотреть только на сетевую задержку: бизнес обычно интересует, когда приложение вернуло содержательный ответ. В этом смысле прикладной RTT полезнее голого сетевого RTT и лучше подходит для разбора узких мест в продукте, а не только в транспорте.

Заодно в открытую часть движка вынесли переменные вроде seq, choice и now, которые раньше выглядели как внутренние удобства. Для тех, кто пишет сценарии вручную, это упрощает генерацию уникальных идентификаторов, вариативных сообщений и простой динамики без внешних генераторов данных.

Чат с ИИ выступает интерфейсом к данным прогонов

Третья часть релиза называется Inference, но по сути речь не о новой модели, а о чате с ИИ вокруг Perfscale через MCP. Схема знакомая: пользователь подключает своего провайдера, после чего агент получает доступ к данным прогонов, логам и конфигурациям и может писать тесты, собирать сводки за период или отвечать на вопросы по конкретному запуску.

В примере используется OpenRouter, но важнее сама связка. Разработчик отдельно упоминает возможность подключать сторонние MCP, включая Grafana, Rootly и ELK, чтобы агент сопоставлял данные из нескольких источников и помогал понять, где проблема: в тесте, в настройке или в коде сервиса. Если это работает стабильно, ценность тут не в модном ярлыке ИИ, а в том, что инженеру приходится реже прыгать между окнами.

Значение для рынка

Для русскоязычных команд в этом релизе важны не обещания, а прикладной набор. NPM-установка упрощает вход в инструмент, WebSocket выводит Perfscale за пределы обычных HTTP-проверок, а чат с ИИ пытается стать рабочим интерфейсом к данным нагрузочного тестирования. На фоне k6, Locust и других привычных решений это выглядит как ставка не только на генерацию нагрузки, но и на разбор результатов в одном контуре.

Следующий логичный вопрос теперь не в том, умеет ли Perfscale отправлять сообщения в сокет, а в том, насколько далеко команда доведет поддержку сложных протоколов и автоматический разбор инцидентов без ручного участия инженера на каждом шаге.

Поделиться: Telegram X LinkedIn