Usar o Barramento de Serviço do Azure com JMS
Este artigo aplica-se a: ✔️ Versão 4.14.0 Versão 5.8.0 ✔️
Este artigo descreve como usar o Barramento de Serviço do Azure com a API JMS integrada à estrutura JMS do Spring.
Você precisa fornecer uma cadeia de conexão do Barramento de Serviço do Azure, que é analisada no nome de usuário de logon, senha e URI remoto para o agente AMQP.
Configuração de dependência
Adicione as seguintes dependências se quiser migrar seu aplicativo Spring JMS para usar o Barramento de Serviço do Azure.
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter-servicebus-jms</artifactId>
</dependency>
Configuração
A tabela a seguir descreve as propriedades configuráveis ao usar o suporte ao Spring JMS:
Property | Description |
---|---|
spring.jms.servicebus.connection-string | A cadeia de conexão do Barramento de Serviço do Azure, para quando você deseja fornecer a cadeia de conexão diretamente. |
spring.jms.servicebus.topic-client-id | O ID do cliente JMS. Só funciona para o topicJmsListenerContainerFactory feijão. |
spring.jms.servicebus.enabled | Um valor que indica se a configuração automática do Servive Bus JMS deve ser habilitada. O valor predefinido é true . |
spring.jms.servicebus.idle-timeout | A duração do tempo limite ocioso da conexão que indica por quanto tempo o cliente espera que o Service Bus mantenha uma conexão ativa quando nenhuma mensagem é entregue. O valor predefinido é 2m . |
spring.jms.servicebus.camada de preços | A camada de preço do Barramento de Serviço do Azure. Os valores suportados são premium e standard. A camada Premium usa o Java Message Service (JMS) 2.0, enquanto a camada padrão usa o JMS 1.1 para interagir com o Barramento de Serviço do Azure. |
spring.jms.servicebus.listener.reply-pub-subdomínio | Um valor que indica se o tipo de destino da resposta é um tópico. Só funciona para o topicJmsListenerContainerFactory feijão. |
spring.jms.servicebus.listener.phase | A fase em que este recipiente deve ser iniciado e parado. |
spring.jms.servicebus.listener.reply-qos-configurações | Configura o QosSettings a ser usado ao enviar uma resposta. |
spring.jms.servicebus.listener.subscription-durable | Um valor que indica se a assinatura deve ser durável. Só funciona para o topicJmsListenerContainerFactory feijão. O valor predefinido é true . |
spring.jms.servicebus.listener.subscription-shared | Um valor que indica se a assinatura deve ser compartilhada. Só funciona para o topicJmsListenerContainerFactory feijão. |
spring.jms.servicebus.pool.block-se-full | Um valor que indica se uma conexão deve ser bloqueada e o pool está cheio. Defina como false para lançar um JMSException em vez disso. |
spring.jms.servicebus.pool.block-if-full-timeout | O período de bloqueio antes de lançar uma exceção se a piscina ainda estiver cheia. |
spring.jms.servicebus.pool.enabled | Um valor que indica se um deve ser criado, em vez de um JmsPoolConnectionFactory regular ConnectionFactory . |
spring.jms.servicebus.pool.idle-timeout | O tempo limite ocioso do pool de conexões. |
spring.jms.servicebus.pool.max-conexões | O número máximo de conexões agrupadas. |
spring.jms.servicebus.pool.max-sessions-per-connection | O número máximo de sessões em pool por conexão no pool. |
spring.jms.servicebus.pool.time-between-expiration-check | O tempo para dormir entre as execuções do fio de despejo de conexão ociosa. Quando negativo, nenhum thread de remoção de conexão ociosa é executado. |
spring.jms.servicebus.pool.use-anonymous-produtores | Um valor que indica se apenas uma instância anônima MessageProducer deve ser usada. Configure-o para false criar um MessageProducer sempre que for necessário. |
spring.jms.servicebus.prefetch-policy.all | O valor de fallback para a opção de pré-busca neste namespace do Service Bus. O valor predefinido é 0 . |
spring.jms.servicebus.prefetch-policy.durable-topic-prefetch | O número de pré-busca para tópico durável. O valor predefinido é 0 . |
spring.jms.servicebus.prefetch-policy.queue-browser-prefetch | O número de pré-busca para o navegador de fila. O valor predefinido é 0 . |
spring.jms.servicebus.prefetch-policy.queue-prefetch | O número de pré-busca para fila. O valor predefinido é 0 . |
spring.jms.servicebus.prefetch-policy.topic-prefetch | O número de pré-busca por tópico. O valor predefinido é 0 . |
Nota
A configuração geral do Spring JMS é omitida para abreviar.
Para obter mais informações, consulte Documento JMS do Spring.
Utilização básica
Usar cadeia de conexão do Service Bus
A maneira mais simples de se conectar ao aplicativo JMS do Service Bus for Spring é com a cadeia de conexão.
Adicione as seguintes propriedades e pronto.
spring:
jms:
servicebus:
connection-string: ${AZURE_SERVICEBUS_CONNECTION_STRING}
pricing-tier: ${PRICING_TIER}
Nota
O padrão habilitado ConnectionFactory
é o CachingConnectionFactory
, que adiciona Session
cache e MessageProducer
cache. Se desejar ativar o recurso de pool de conexões do JmsPoolConnectionFactory
, defina spring.jms.servicebus.pool.enabled
como true
. Você pode encontrar outras opções de configuração de pool (propriedades com prefixospring.jms.servicebus.pool.
) na seção Configuração.
Exemplos
Para obter mais informações, consulte o repositório azure-spring-boot-samples no GitHub.
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários