Проверка готовности и живучести сделана активной / неактивной в зависимости от конфигурации

Я играю с Quarkus и пытаюсь создать службу приема, которая отправляет данные в kafka или другую конечную точку REST. Я добавил в проект зависимости quarkus-smallrye-reactive-messaging-kafka и quarkus-reactive-messaging-http. Я хотел иметь только один конкретный конвейер, например http- ›kafka или http-› http, но я смогу изменить это, используя обновление конфигурации с последующим перезапуском. Я мог бы добиться этого, добавив 2 зависимости и конфигурации, как показано ниже.

## Rest service configuration
mp.messaging.outgoing.messages.connector=smallrye-http
mp.messaging.outgoing.messages.method=POST
mp.messaging.outgoing.messages.url=http://localhost:9009/messages

## Kafka Ingestion configuration
## ----------------------------
#mp.messaging.outgoing.messages.connector=smallrye-kafka
#kafka.bootstrap.servers=host.docker.internal:9092
#mp.messaging.outgoing.messages.topic=messages
#mp.messaging.outgoing.messages.value.serializer=org.apache.kafka.common.serialization.ByteArraySerializer

Теперь проблема в том, что, хотя в моем application.propertues коннектор Kafka закомментирован, проверка работоспособности Kafka все еще выполняется и показывает, что Kafka не работает. Я ожидаю, что он не должен был запускать проверку работоспособности Kafka, поскольку я не настроил в соответствии с конфигурацией. Возможно ли это сейчас, и если нет, имеет ли смысл рассматривать это как запрос функции и включать его?

С уважением,


person anaray    schedule 24.02.2021    source источник


Ответы (1)


Проверка работоспособности Kafka по умолчанию отключена.

Но проверка работоспособности для реактивного обмена сообщениями включена по умолчанию, вы можете отключить ее с помощью mp.messaging.outgoing.messages.heath-enabled=false.

Обратите внимание, что для вашего варианта использования вы также можете использовать разные каналы и отключить тот, который вы не использовали, вместо того, чтобы комментировать конфигурацию.

Отключить канал можно просто через mp.messaging.outgoing.messages.enabled=false.

person loicmathieu    schedule 25.02.2021
comment
Спасибо @loicmathieu. Для меня использование разных каналов было бы наиболее подходящим подходом. - person anaray; 25.02.2021