Я хотел бы ответить на этот вопрос, основываясь на двух аспектах:
1) Способ взаимодействия вашего приложения с другим приложением
Вы можете сделать это двумя способами. Первый является синхронным, если вам нужно дождаться результата от второго приложения и заполнить логи c в вашем первом приложении, тогда go с этим подходом. И да, вы можете использовать вызов REST (с использованием AXION или любого клиента REST) .gRp c - это еще один вариант, если вы планируете передавать данные.
Следующим является асинхронный обмен данными, когда ваше приложение не ожидание результата от второго приложения (уволить и забыть). Это может быть достигнуто с помощью очереди сообщений
2) Способ развертывания вашего приложения и способ его ссылки.
Предполагается, что вы вызываете приложение, используя IP: PORT или localhost: PORT ( поскольку он находится в той же виртуальной машине), я могу сказать, что это не очень хороший подход.
Подумайте о сценарии, в котором вам нужно переместить одно из приложений в другое окно или вы хотите масштабировать приложение по отдельности. В этих случаях вам будет трудно управлять.
Есть ли у вашего приложения какой-либо шлюз API, обратный прокси-сервер или балансировщик нагрузки перед вашим приложением? Если да, позвоните в вашу заявку через эти службы.
Если вы не уверены в том, что указано выше, перейдите по ссылкам ниже:
https://hub.packtpub.com/6-common-use-cases-of-reverse-proxy-scenarios/ https://www.redhat.com/en/topics/api/what-does-an-api-gateway-do https://microservices.io/microservices/news/2015/03/15/deployment-patterns.html