Я довольно новичок в Spring Boot
и хотел бы получить некоторую информацию, которая позволит мне лучше справляться с запуском приложения внутри контейнера Spring
.
По сути, у меня есть FIX
двигатель (принимает и отправляет FIX
сообщений).Я мог бы использовать это как отдельное Java-приложение (клиент-сервер), но я решил пойти на Spring
, потому что я использую его простоту использования для hibernate + внедрение зависимостей.Мне также придется в конечном итоге реализовать интерфейс, чтобы его было легко настроить с помощью Spring
.
. То, что я сейчас делаю, - это запуск моего двигателя через CommandLineRunner
.Это инициирует все, что мне нужно (сокеты и все), и прослушивает входящие сообщения.Как только я получаю сообщение LOGOFF
, я корректно завершаю работу с моим приложением (System.exit(0)
с ShutdownHook
- хотя другой вариант также может включать работу двигателя 24/7).
Мой вопросесли я правильно использую контейнер Spring
, или есть лучший способ?Например, должен ли я отделять приложение Spring
от самого движка?Большинство вещей, которые я вижу в Интернете по поводу CommandLineRunner
, заключается в том, что они позволяют вам запускать фрагмент кода для инициализации чего-либо перед запуском основного приложения, но я полностью запустил весь движок FIX
.Может быть, мне чего-то не хватает в отношениях между Spring
контейнером и его базовым приложением.
Любая помощь с благодарностью, это будет первый раз, когда я запускаю что-то такое большое в производстве.Я надеюсь, что это не будет закрыто как субъективный вопрос, я думаю, что это может быть полезно для других, желающих сделать что-то подобное, или для тех, кто плохо знаком с Spring
и как строить вокруг этого.
Спасибо