Dev Services para Pulsar
Com a extensão Smallrye Reactive Messaging Pulsar do Quarkus (quarkus-smallrye-reactive-messaging-pulsar), o Dev Services para Pulsar inicia automaticamente um broker Pulsar no modo de desenvolvimento e ao executar testes. Portanto, você não precisa iniciar um broker manualmente. O aplicativo é configurado automaticamente.
Ativando / Desativando Dev Services para o Pulsar
Os Dev services para Pulsar são ativados automaticamente, a menos que:
-
quarkus.pulsar.devservices.enabledé definido comofalse -
o
pulsar.client.serviceUrlestá configurado -
todos os canais Pulsar de mensagens reativas têm o atributo
serviceUrldefinido
Dev Services para a Pulsar dependem do Docker para iniciar o agente. Se o seu ambiente não for compatível com o Docker, você precisará iniciar o agente manualmente ou conectar-se a um agente já em execução. Você pode configurar o endereço do agente usando pulsar.client..
Broker partilhado
Na maioria das vezes, você precisa compartilhar o broker entre os aplicativos. O Dev Services para Pulsar implementa um mecanismo de descoberta de serviços para que seus vários aplicativos Quarkus em execução no modo de desenvolvimento compartilhem um único broker.
O Dev Services para Pulsar inicia o contêiner com a etiqueta quarkus-dev-service-pulsar que é utilizada para identificar o contêiner.
|
Se precisar de vários brokers (compartilhados), você pode configurar o atributo quarkus.pulsar.devservices.service-name e indicar o nome do broker. Ele procura um contêiner com o mesmo valor ou inicia um novo se nenhum for encontrado. O nome do serviço padrão é pulsar .
O compartilhamento é ativado por padrão no modo de desenvolvimento, mas desativado no modo de teste. Você pode desativar o compartilhamento com quarkus.pulsar.devservices.shared=false.
Definindo a porta
Por padrão, o Dev Services para Pulsar escolhe uma porta aleatória e configura o aplicativo. Você pode definir a porta configurando a propriedade quarkus.pulsar.devservices.port.
Note que o endereço anunciado pelo Pulsar é automaticamente configurado com a porta escolhida.
Configurando a imagem
O Dev Services para Pulsar suporta a imagem oficial do Apache Pulsar.
Um nome de imagem personalizado pode ser configurado. Por exemplo:
quarkus.pulsar.devservices.image-name=datastax/lunastreaming-all:2.10_4.7
Configurar o broker Pulsar
É possível configurar o Dev Services para a Pulsar com a configuração personalizada do broker.
O exemplo seguinte ativa o suporte de transação:
quarkus.pulsar.devservices.broker-config.transaction-coordinator-enabled=true
quarkus.pulsar.devservices.broker-config.system-topic-enabled=true