Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

143
Visualizações
K6 Websocket se desconecta después de 15 segundos

Tengo problemas para ejecutar un websocket K6 durante más de 15 segundos en 1 VU.

El código es de la documentación:

 const socketUrl = `${resBody.url.replace('https', 'wss')}&id=${connectionId}`; res = ws.connect(socketUrl, params, function (socket) { socket.on('open', function() { console.log('connected'); socket.setInterval(function timeout() { socket.ping(); }, 1000); var payload = JSON.stringify({ 'protocol': 'json', 'version': 1 }); socket.send(payload); }); socket.on('message', (data) => console.log('Message received: ', data)); socket.on('close', () => console.log('disconnected')); socket.on('error', (e) => console.log('Error: ', e.error())); socket.on('ping', function() { console.log('ping'); socket.pong(); }); socket.on('pong', () => console.log('pong')); socket.on('priceupdates', (data) => console.log('PriceUpdates: ', data)); socket.setTimeout(function () { console.log('Timeout'); socket.close(); }, 1000 * 60 * 100); }); check(res, { 'status is 101': (r) => r && r.status === 101 });

Ejecutar comando:

k6 ejecutar --vus 1 --iteraciones 1 --duración 1m --min-iteración-duración 30s live_prices.js

Y la salida:

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Encontré que necesitamos enviar un mensaje de apretón de manos justo después de que se establezca la conexión

 var payload = JSON.stringify({ 'protocol': 'json', 'version': 1 });

pero con Record Ending char (ASCII char 30) al final.

Así que terminé enviando:

 const endOfRecord = String.fromCharCode(30); var payload = JSON.stringify({ 'protocol': 'json', 'version': 1 }) + endOfRecord;

Después de eso todo comenzó a funcionar correctamente.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda