У моих клиентов очень строгие требования о том, как они могут развернуть веб-приложение. Они требуют, чтобы он был доступен для развертывания как WAR на сервере Java, таком как Tomcat. Однако наше приложение написано в golang и компилируется на исполняемый сервер.
Единственное решение, которое я мог бы придумать, было бы, чтобы начать долговременный процесс golang в фоновом режиме, который слушает нестандартный порт, например 8080
, а затем помещает какой-то прокси-сервер в java, который прозрачно проксирует все HTTP-запросы и ответы на этот процесс.
Как мне это сделать? Я не совсем знаком с Java Servlets и выполняю длинные процессы, подобные этому в фоновом режиме.
Моя основная забота - если что-то подобное стандартное,
- Это повлияет на использование памяти JVM и т.д.
- Будет ли сервер разрешать мой процесс golang распределять требуемые объем памяти?
- Может ли JVM отслеживать использование процессора?
Есть ли лучший способ сделать это, может быть? Как какой-то механизм взаимодействия между процессами?