Apache Bench: Bắt tay SSL không liên quan trực tiếp đến mức độ tương tranh


12

Tôi đã chạy một số thử nghiệm trên ab và khi tôi sử dụng mức đồng thời trên 155, tôi nhận được như sau:

SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
Completed 100 requests
Completed 200 requests
Finished 200 requests

Các yêu cầu vẫn thành công:

Concurrency Level:      200
Time taken for tests:   14.481 seconds  
Complete requests:      200
Failed requests:        0

Tôi đã thử nghiệm nó nhiều lần và bắt tay SSL chỉ thất bại khi đồng thời vượt quá 155. Có ai có thể giải thích cho tôi làm thế nào chúng có thể liên quan trực tiếp không?

Câu trả lời:


8

Bắt tay SSL có thể thất bại khi kết nối nói chung bị lỗi hoặc bị gián đoạn, cũng như do lỗi SSL. Nó cũng có thể thất bại nếu hết thời gian do thiếu entropy có sẵn.

Rất có thể bạn đang đập máy chủ quá mạnh. Không có đủ thông tin ở đây để xác định chính xác điều gì đang thất bại.

Định nghĩa của thành công trong thử nghiệm này là kỳ lạ và nghi ngờ. Tuy nhiên, nếu bộ nhớ phục vụ, mã lỗi 5 chỉ ra rằng ổ cắm đã bị đóng. Có lẽ kết nối được đánh giá là thành công khi đàm phán SSL bắt đầu, thay vì sau khi thành công?


1
Lỗi 5 (nên) là lỗi IO. Nhưng các socket openssl thường được xây dựng trên các socket thông thường, vì vậy tôi không biết điều đó thực sự có nghĩa là gì. Ổ cắm bình thường không tạo ra lỗi IO.
Matthew Ife

Họ làm gì khi họ đóng cửa từ xa, phải không?
Falcon Momot

Không, một ghi sẽ tạo ra EPIPE và đọc sẽ trả về 0 byte.
Matthew Ife

Tôi cũng không chắc đây là mã lỗi nằm trong cùng miền với mã lỗi có thể được chuyển cho strerror (), nhưng tôi thực sự không biết vì tôi đã không nhìn vào nguồn.
Falcon Momot
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.