У нас есть приложение, которое предоставляет службу REST, которая развертывается в контейнере Tomcat. При запуске приложение кэширует множество дорогостоящих объектов (например, соединения с базой данных, соединения HSM, часто читают объекты базы данных и т. Д. c.), А затем продолжает работать в течение длительного периода времени. Мы хотели бы добавить интерфейс gRP C к API приложения, чтобы клиенты могли выбирать между интерфейсом classi c REST и gRP C.
Безопасно ли запускать текущее приложение в Tomcat запускает сервер gRP C в том же пространстве приложений? Мы надеемся, что мы сможем сделать это и совместно использовать кэшированные объекты вместо двух приложений (1. REST через Tomcat и 2. gRP C) с повторяющимися объектами в памяти. Мы думаем, что можем создать отдельный поток, запускающий сервер gRP C для приема запросов, а затем использовать те же контроллеры, что и в текущей настройке.