Требуется ли HTTP-сервер (Jetty) для размещения верблюжьих маршрутов, обрабатывающих сообщения HL7

Я хочу создать слушателя HL7 на верблюде и обработать получаемые сообщения HL7. Я планировал использовать SpringBoot/dropwizard вместе с верблюдом для этой цели. Причина, по которой dropwizard уже используется в моей компании для создания успокоительных API, и я подумал о том, чтобы использовать их для создания маршрутов Camel также в качестве микросервисов. Мои вопросы

  1. Сообщения HL7 принимаются с использованием MLLP(Mina или Netty) по TCP. Там нет никакого HTTP-участия. Так есть ли цель использовать такой сервер, как Jetty? Лучше использовать автономный верблюд?

  2. Если в моем верблюжьем приложении нет никаких HTTP-запросов / слушателей, стоит ли мне использовать dropwizard/Springboot, так как эти платформы были созданы в основном для создания Restful API, то есть для HTTP-трафика?

1 ответ

Решение

Объявление 1)

Да, HTTP не задействован, и Camel использует Netty (предпочтительно) или Mina. Имейте в виду, что camel-mllp более устойчив, чем camel-hl7, в котором исправлены некоторые более сложные угловые случаи HL7. Смотрите файл readme: https://github.com/apache/camel/tree/master/components/camel-mllp

Объявление 2)

Вы можете отказаться от HTTP при весенней загрузке, просто у вас нет зависимости от -starter-web и отдельного приложения без HTTP. Просто учтите, что вам может понадобиться включить camel.springboot.main-run-controller=true в application.properties чтобы поддерживать работу JVM.

А с помощью Spring Boot или DropWizard и т. Д. У вас есть такое же развертывание и упаковка, как и у других приложений, вместо того, чтобы создавать что-то самостоятельно.

Другие вопросы по тегам