У меня есть nodejs сервер.
Я уже тестировал свой код tcp-клиента.
let net = require('net');
let check = true;
let client = new net.Socket();
client.connect(8090, '127.0.0.1',function(){
console.log('Connected');
//client.write('Hello, server!');
console.log(client.remoteAddress);
});
client.on('data', function(data){
console.log('Received: ' + data);
console.log(client.remoteAddress);
//
//console.log(client.id);
//client.id
//client.destroy(); // kill client after server's response
});
client.on('connect', function(data){
console.log('in connected');
//console.log(client.remoteAddress);
let obj = {};
let firstInDate = new Date();
let firstMilisecond = firstInDate.getTime();
let firstMs = firstInDate.getUTCMilliseconds();
obj.firstMilisecond = firstMilisecond;
obj.firstMs = firstMs;
console.log("Start get data");
for (let i = 0; i < 5000; i++) {
if(check === true) {
console.log(i + 1);
//let timestamp = date.getTime();
let date = new Date();
let ms = date.getUTCMilliseconds();
if (firstMilisecond < date.getTime() - 1000) {
check = false;
break;
}
//date.format("dd/MM/yyyy hh:mm:ss TT");
//date += "" + ms;
//dateFormat(date, "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
let dateFormat = date.toString();
dateFormat += " " + ms + " ms";
//let time = date.getTime();
obj.dateFormat = dateFormat;
//client.pipe('Alo');
client.write(JSON.stringify(obj) + "\n");
}
else{
break;
}
}
//console.log(client.remoteAddress);
});
client.on('close', function(){
//console.log(client.id);
console.log('Connection closed!');
});
Я тестирую с этим клиентским кодом, и это нормально. После этого я хочу проверить производительность сервера, поэтому я пытаюсь протестировать с несколько потоков (как и многие клиенты) с запросом одновременно . Я нашел JMeter, но я не смог найти подходящую гильдию. Несколько потоков будут использовать скрипт моего клиента для тестирования. Я надеюсь, что JMeter сможет решить эту проблему (с tcp сервером, кодированным nodejs). Если нет, можете ли вы показать мне какой-нибудь инструмент, который может мне помочь? Спасибо