Я тестирую HttpHelloWorldServer
из примера нетти, я делаю небольшое изменение, делая CONTENT
больше (25 КБ - соответствует моему размеру ответа в реальности). И я вижу огромное отличие между HTTP и HTTPS-версией, HTTP дает мне около 110k req/s, HTTPS дает мне ~ 400 req/s. Итак, что может сделать HTTPS таким медленным?Огромная производительность отличается от HTTP и HTTPS?
Условия испытаний: Нетти 5 ALPHA2
JDK8-64 бит Ubuntu 14.04
процессора Core i7 8 поток 2,2 ГГц
Оперативная память 8GB
Запуск примера без какого-либо специального параметра JVM.
Мой контрольный показатель wrk
с поддержкой Keep-Alive.
Возможный дубликат [HTTP vs HTTPS performance] (http://stackoverflow.com/questions/149274/http-vs-https-performance) –
В каждом соединении HTTPS необходимо переопределить ключи и сертификаты безопасности (в зависимости от как он настроен). Что касается того, достаточно ли этого, чтобы снизить производительность до этого уровня, был бы еще один вопрос – MadProgrammer
Да, HTTPS имеет накладные расходы, но это слишком много, другая версия реализована в NodeJS, C++, разница в перфорации составляет около 50%, что более приемлемо. – secmask