tsenart / vegeta

HTTP load testing tool and library. It's over 9000!
http://godoc.org/github.com/tsenart/vegeta/lib
MIT License
23.51k stars 1.36k forks source link

Timeout errors #371

Closed AlexProfi closed 5 years ago

AlexProfi commented 5 years ago

Hello I use vegeta for test nginx server with mutual tls I use this command echo "GET https://meteotravel.ru/" | ./vegeta -cpus=16 attack -duration=3m -timeout 240s -rate=10000 -workers=2000 -key ../../containers/ngx-rosal/certs/client/rsa/clientB-key.pem -cert ../../containers/ngx-rosal/certs/client/rsa/clientB-crt.pem | tee reports.bin

and get this output

����������'H?���75\����<!DOCTYPE html>
<html>
<head>
    <title>Nginx!</title>
</head>
<body>
<h1>Welcome!</h1>
<h1>YA</h1>
<h1>End</h1>
</body>
</html>
W����1���
              �N�<Get https://meteotravel.ru/: net/http: TLS handshake timeout����������'I�j��7Nf����<!DOCTYPE html>
<html>
<head>
    <title>Nginx!</title>
</head>
<body>
<h1>Welcome!</h1>
<h1>YA</h1>
<h1>End</h1>
</body>
</html>
W��������  �\��<Get https://meteotravel.ru/: net/http: TLS handshake timeoutW����c���
|Jy�<Get https://meteotravel.ru/: net/http: TLS handshake timeoutW��������    ��v�<Get https://meteotravel.ru/: net/http: TLS handshake timeoutW����C���
K���<Get https://meteotravel.ru/: net/http: TLS handshake timeoutW����������<Get https://meteotravel.ru/: net/http: TLS handshake timeoutW����8���
;)|�<Get https://meteotravel.ru/: net/http: TLS handshake timeoutW����X���
���<Get https://meteotravel.ru/: net/http: TLS handshake timeoutW��������

The first is normal response and the others is connect timeouts errors
How to fix this?
I don't see overload on cpu on nginx server
tsenart commented 5 years ago

A few comments:

  1. Since vegeta attack's output is binary encoded, you need to pipe it to vegeta report.
  2. It seems like the TLS handshake is timing out. Does this happen at lower request rates? Like 1 req/s?