Здравствуйте.
Мы все больше используем микросервисы, они имеют уникальные uri, выполняют атомарные операции и отдают JSON ответы, их проксирует и кеширует Nginx.
В этих бекенд микросервисах, часто появляются задачи для решения которых нужны ответы от других бекенд микросервисов, приходится внутри одного бекенд микросервиса делать http запросы к другим бекенд микросервисам, через Nginx, он нужен для балансировки и кеша, это все хорошо, но относительно медленно, несмотря на то что ответы получаем как правило из кеша Nginx.
Я думаю как это дело можно оптимизировать, первое что приходит в голову сделать в Nginx ещё один виртуал сервер, который будет использовать те же upstream и туже кеш зону, но без SSL, и других лишних опций, этот вирт сервер будет слушать юникс сокет, каждый микросервис (они все демоны) будет держать постоянный открытый конект к этому юникс сокету, и HTTP методом GET получать нужные кеши от других микросервисов.
Не уверен что этот велосипед оптимальный, возможно есть лучшие варианты?
Спасибо.