У нас есть основной веб-сервис, использующий несколько микросервисов.
Основной сервис вызывается очень часто (много запросов) и был профилирован и спроектирован так, чтобы быть быстрым с точки зрения кода.
Если за основным веб-сервисом у нас было 5 микросервисов, то для каждого запроса к основному сервису у нас было 5 подзапросов (по одному на каждый микросервис).
По соображениям безопасности мы включили HTTPS для каждой связи (tls1.2).
Теперь отметим, что мы добавляем немалые издержки из-за рукопожатия TLS.
Есть ли способ иметь архитектуру, позволяющую повторно использовать часть рукопожатий (или что-либо еще тяжелое в части https части com) для оптимизации всех запросов?
Может быть, что-то, позволяющее apache или nginx или (…) держать соединения «открытыми» и использовать их повторно?
Расширение PHP curl допускает что-то подобное, но это только в течение жизни вашего обработчика curl … Я хочу воспроизвести этот тип поведения, но для всех (или более всего) запросов, поступающих в основной веб-сервис.
Функция завитка, которую я упомянул http://tokenposts.blogspot.nl/2013/02/php-curl-optimise-speed-reusing-ssl.html
Задача ещё не решена.
Других решений пока нет …