As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
RabbitMQ 4.2
O Amazon MQ oferece suporte à versão RabbitMQ 4.2 como a primeira versão da série RabbitMQ 4. RabbitMQ4.2 apresenta o AMQP 1.0 como protocolo principal, o Khepri como armazenamento de metadados padrão, prioridades de mensagens da fila de quórum e novos plug-ins de autenticação, incluindo autenticação mTLS e HTTP. Para obter mais informações sobre essa versão, consulte as notas da versão RabbitMQ 4.0.0
Novos recursos e aprimoramentos no RabbitMQ 4.2 no Amazon MQ
-
AMQP 1.0 como protocolo principal: Para obter mais informações, consulte Protocolos.
-
Escavadeiras locais: as escavadeiras agora suportam um novo protocolo chamado “local”, além do AMQP 0-9-1 e do AMQP 1.0. As escavadeiras locais são baseadas internamente no AMQP 1.0, mas em vez de usar conexões TCP separadas, elas usam conexões intra-cluster entre nós do cluster e APIs internas para publicar e consumir mensagens. Isso só pode ser usado para consumir e publicar no mesmo cluster e pode oferecer maior taxa de transferência usando menos recursos do que o AMQP 0-9-1 e o AMQP 1.0.
-
As filas de quórum dão suporte às prioridades das mensagens: as prioridades das mensagens da fila de quórum estão sempre ativas e não exigem uma política. Quando uma fila de quórum recebe uma mensagem com uma prioridade definida, ela permite a priorização. As filas de quórum suportam apenas dois níveis de prioridade interna: alto e normal.
RabbitMQmapeia mensagens sem prioridade e mensagens com prioridades de 0 a 4 para o normal. Mensagens com prioridade maior que 4 são mapeadas para alta. High-priority as mensagens são favorecidas em relação às mensagens de prioridade normal na proporção de 2:1. Para cada 2 mensagens de alta prioridade, a fila entrega 1 mensagem de prioridade normal, se houver uma disponível. Como resultado, as filas de quórum implementam um modelo de processamento não estrito e de prioridade justa que garante o progresso nas mensagens de prioridade normal.
-
Khepri: Khepri é usado como armazenamento de metadados padrão para 4 corretores RabbitMQ
-
TLS mútuo (mTLS): o Amazon MQ oferece suporte ao TLS mútuo (mTLS) para RabbitMQ corretores, permitindo que os clientes se autentiquem usando certificados. Para obter mais informações, consulte Configuração do mTLS.
-
Plugin de autenticação de certificado SSL: O plug-in de autenticação SSL usa certificados de cliente de conexões mTLS para autenticar usuários, permitindo a autenticação usando certificados de X.509 cliente em vez de credenciais de nome de usuário e senha. Para obter mais informações, consulte Autenticação de certificado SSL.
-
Plugin de autenticação HTTP: O plug-in de back-end de autenticação HTTP permite delegar autenticação e autorização a um serviço HTTP externo. Para obter mais informações, consulte Autenticação e autorização HTTP.
-
Suporte JMS: o broker agora oferece suporte a cargas de trabalho JMS com o plug-in de troca de tópicos JMS ativado, permitindo que aplicativos JMS se conectem usando o cliente JMS. RabbitMQ
-
Tamanho de armazenamento configurável: os corretores RabbitMQ 4.x implantados no modo CLUSTER_MULTI_AZ suportam tamanhos de armazenamento EBS configuráveis. Para obter mais informações, consulte tipos de instância mq.m7g.
Recursos obsoletos em RabbitMQ 4.2 no Amazon MQ
-
Espelhamento de filas clássicas: as filas clássicas continuam sendo suportadas sem nenhuma alteração significativa nas bibliotecas e aplicativos do cliente, mas agora elas são um tipo de fila não replicada. Os clientes poderão se conectar a qualquer nó para publicar e consumir a partir de qualquer fila clássica não replicada. As filas de quórum são recomendadas para replicação e segurança de dados.
-
Remoção da QoS global: recomenda-se que os clientes definam a QoS por consumidor (não global) em vez da QoS global, em que uma única pré-busca compartilhada é usada para um canal inteiro.
-
Suporte para filas transitórias e não exclusivas: filas transitórias são filas cuja vida útil está vinculada ao tempo de atividade do nó em que são declaradas. Em um agente de instância única, eles são removidos quando o nó é reiniciado. Em uma implantação de cluster, eles são removidos quando o nó em que estão hospedados é reiniciado. Recomendamos usar o TTL de filas para excluir automaticamente filas inativas e não utilizadas após algum tempo de inatividade. As filas exclusivas continuam sendo suportadas e são excluídas quando todas as conexões com a fila forem removidas.
Alterações significativas em RabbitMQ 4.2 no Amazon MQ
As seguintes alterações de código aberto podem afetar seus aplicativos ao atualizar para a RabbitMQ versão 4.2. Revise essas mudanças antes de atualizar seu corretor.
-
Tipo de fila padrão: O tipo de fila padrão em um corretor de RabbitMQ 4 é definido como quorum. Se nenhum argumento de tipo de fila for especificado durante a criação da fila, uma fila de quórum será criada.
-
O limite padrão de reentrega nas filas de quórum é definido como 20: as mensagens reentregues 20 vezes ou mais serão enviadas com letra morta ou descartadas (removidas). Se 20 entregas por mensagem for um cenário comum para uma fila, um alvo de envio de cartas mortas ou um limite maior deverá ser configurado para essas filas para evitar a perda de dados. A forma recomendada de fazer isso é por meio de uma política.
-
amqplib: As versões amqplib do cliente Node JS anteriores a 0.10.7 ou qualquer biblioteca de cliente AMQP usando frame_max < 8192 não poderão se conectar a RabbitMQ
-
Limites de recursos padrão: o Amazon MQ for RabbitMQ introduziu limites padrão de uso de recursos para conexões, canais, consumidores por canal, filas, vhosts, escavadeiras, trocas e tamanho máximo de mensagens. Eles servem como barreiras para proteger a disponibilidade do corretor e podem ser personalizados usando configurações para atender às suas necessidades específicas.