Мы создаем функцию группового чата, в которой используются веб-узлы. Мы хотим проверить, сколько соединений может поддерживать наша текущая инфраструктура.
В основном это сводится к тому, как имитировать веб-узел.
Мы создаем функцию группового чата, в которой используются веб-узлы. Мы хотим проверить, сколько соединений может поддерживать наша текущая инфраструктура.
В основном это сводится к тому, как имитировать веб-узел.
Я могу дать вам предложение из моего недавнего опыта. Вы можете подключить виртуальные клиенты на основе webkit Phantom к вашему серверу чата и измерить использование ресурсов (например, в CPU, памяти, может использоваться оболочка script или другая утилита, или вы можете профилировать свою службу)
var system = require('system');
var page = require('webpage').create();
page.viewportSize = { width: 1024, height: 768 };
page.open("<URL to chat server service>", function (status) {
// Check for page load success
if (status !== "success") {
console.log("Unable to connect");
phantom.exit();
} else {
console.log("Client connected ");
//after connecting you may extract further information, taking screenshots etc. refer the phantom.js API for further details
}
});
Используете ли вы какую-либо инфраструктуру, такую как socket IO для связи с веб-сайтами?
http://webtide.intalio.com/2011/08/websocket-example-server-client-and-loadtest/
Прошло несколько лет, есть еще один новый инструмент для тестирования нагрузки для Websockets: https://github.com/observing/thor
Как насчет использования Jmeter для этой цели. Хотя он еще не поддерживает WebSocket напрямую, вы можете использовать пробоотборник TCP для выполнения этой работы.
В качестве альтернативы вы можете получить подключаемый модуль, который добавит поддержку WebSocket для JMeter: http://github.com/maciejzaleski/JMeter
Излишне говорить, что подключаемый модуль JMeter и WebSocket доступен с открытым исходным кодом и доступен для использования.
Для этого вы можете использовать инструмент тестирования нагрузки.
Я использовал WebLOAD в аналогичном проекте. Он регистрирует веб-трафик при использовании браузера - он регистрирует регулярные HTTP-запросы, а также трафик веб-сокетов - вы можете снова воспроизводить script со многими пользователями и измерять поведение сервера.
Я бы сделал это с помощью Node.js, чтобы вы могли использовать ту же самую клиентскую библиотеку websocket, которую вы также используете в реальном клиенте.
У меня был приятный опыт работы с tsung http://tsung.erlang-projects.org/