Apache Bench: сбой SSL-рукопожатия напрямую связан с уровнем параллелизма

Apache Bench: сбой SSL-рукопожатия напрямую связан с уровнем параллелизма

Я провел несколько тестов на ab, и при использовании уровня параллелизма более 155 я получаю следующее:

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

Запросы по-прежнему выполняются:

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

Я проверял это много раз, и SSL-рукопожатие терпит неудачу только тогда, когда количество одновременных попыток превышает 155. Может ли кто-нибудь объяснить мне, как они могут быть напрямую связаны?

решение1

SSL-рукопожатие может не сработать, когда соединение в целом не срабатывает или прерывается, а также из-за ошибок SSL. Оно также может не сработать, если истекло время ожидания из-за недостатка доступной энтропии.

Скорее всего, вы просто слишком сильно нагружаете сервер. Здесь недостаточно информации, чтобы определить, что именно не работает.

Определение успеха в этом тесте странное и подозрительное. Однако, если память не изменяет, код ошибки 5 указывает на то, что сокет закрыт. Возможно, соединение считается успешным, как только начинается согласование SSL, а не после того, как оно успешно завершено?

Связанный контент