Какой способ взаимодействия двух микросервисов, работающих на одном хосте, является наиболее эффективным? - PullRequest
0 голосов
/ 20 июня 2020

В моей компании есть система микросервисной архитектуры, в которой две отдельные машины (назовем ее машиной A и B) работают вместе, составляя наш собственный API. На компьютере A размещается основная служба, которая получает все запросы к центральной конечной точке. В зависимости от запроса, он передает последующие HTTP-запросы к микрослужбам, содержащимся либо в себе, либо на компьютере B. После получения и обработки запросов микросервисы отвечают основной службе, также через HTTP, которая, наконец, доставляет ответ клиенту. Примечание 1: все машины, включая клиентов, находятся в одной локальной сети. Примечание 2: системе нужны обе машины A и B, поскольку некоторые службы, работающие в A, не могут быть запущены в B, и наоборот.

Когда дело доходит до связи между машинами A, B и клиентами, я не знаю Я заметил большую разницу между HTTP и другими более быстрыми протоколами, такими как WebSockets и TCP. Однако, когда я хочу обмениваться данными между двумя службами на одном компьютере (A или B), мне интересно, нет ли более быстрого способа, чем переход HTTP-пакетов или даже установление TCP-соединений или WebSockets. Я читал об IP C (межпроцессное взаимодействие), но, похоже, это тоже не работает. Есть мысли?

...