Jeden z moich klientów ma bardzo rygorystyczne wymagania dotyczące sposobu wdrażania aplikacji internetowej. Wymagają, aby był możliwy do wdrożenia jako WAR w serwerze Java, takim jak Tomcat. Nasza aplikacja jest jednak napisana w języku golang i kompiluje się w wykonywalny serwer.Czy mogę podać serwer Golanga osadzony w WAR?
Jedynym rozwiązaniem mogłoby myślę off byłoby rozpocząć długo żył proces golang w tle, który nasłuchuje na niestandardowym porcie jak 8080
a następnie umieścić jakieś proxy w java, które w przejrzysty proxy wszystko Żądania HTTP i odpowiedzi na ten proces.
Co mam zrobić, jeśli chodzi o wdrożenie? Nie jestem zaznajomiony z serwletami Java i uruchomieniem długich procesów takich jak ten w tle.
Moim głównym problemem jest to, czy coś takiego jest standardem,
- wpłynie to zużycie pamięci JVM za, etc?
- Czy serwer zezwala mojemu procesowi golang na przydzielenie wymaganej ilości pamięci wynoszącej ?
- Czy JVM będzie w stanie śledzić wykorzystanie procesora?
Czy jest lepszy sposób na zrobienie tego? Jak jakiś rodzaj mechanizmu komunikacji między procesami?
W środowisku mikroserwisów, kto dba o jedną usługę zapisaną w Go, inną w węźle, inną z możliwością użycia Dropwizarda. Usługi i tak są małe i można je łatwo wymienić, jeśli nikt nie jest w pobliżu, który zna język lub ramy. Ale jeśli masz stos J2ee, ops, który go obsługuje, i programistów, którzy go utrzymują, po prostu nie ujdzie ci to na sucho, chyba że masz do tego bardzo dobry powód (i omówiłeś to wcześniej). Zakładając, że ci pracownicy od dawna nie żyją lub nawet nie żyją, nie dotrą daleko. Nie spełnienie rygorystycznych wymagań będzie oznaczać brak wynagrodzenia lub sądu. –