ApsaraMQ for RabbitMQ

O ApsaraMQ for RabbitMQ é um serviço de envio de mensagens desenvolvido com base em armazenamento distribuído altamente disponível. Este serviço é compatível com o protocolo AMQP 0-9-1. ApsaraMQ for RabbitMQ é compatível com os clientes RabbitMQ de código aberto. Este serviço evita vários problemas, como acúmulo de mensagens e split-brain, que ocorrem no RabbitMQ de código aberto e diminuem a estabilidade do seu negócio. Esse serviço também oferece benefícios comuns dos serviços de mensagens em nuvem, como alta simultaneidade, arquitetura distribuída e escalonamento automático.

Novos recursos

O novo recurso de consulta de mensagens permite visualizar mensagens em tempo real.

Saiba mais >
Principais recursos

O recurso de monitoramento e alerta permite que o sistema monitore e relate alertas para vários itens, como instâncias, hosts virtuais (vHosts) e filas.

Saiba mais >

Benefícios

Compatibilidade com clientes RabbitMQ de código aberto

O ApsaraMQ for RabbitMQ é compatível com o protocolo AMQP 0-9-1 e com os clientes RabbitMQ de código aberto desenvolvidos usando todas as linguagens. Este serviço oferece suporte a filas, trocas e hosts virtuais criados no RabbitMQ de código aberto.

Eliminação de pontos críticos no RabbitMQ de código aberto

O ApsaraMQ for RabbitMQ tem suporte para o acúmulo de um grande número de mensagens. Isso evita falhas que podem ocorrer se uma grande quantidade de memória for consumida por conta do acúmulo de um grande número de mensagens. Um cluster ApsaraMQ for RabbitMQ usa uma arquitetura distribuída que não oferece suporte a nós primários. Isso evita o problema de split-brain que pode ocorrer no RabbitMQ de código aberto. Este serviço é altamente escalável e oferece suporte para Auto Scaling. Cada fila tem suporte para capacidade ilimitada.

Alto desempenho

O ApsaraMQ for RabbitMQ tem suporte para milhões de filas. Cada fila suporta operações de dimensionamento e um número ilimitado de solicitações simultâneas. O serviço é altamente escalável. O TPS máximo de uma fila aumenta linearmente conforme o número de nós da fila. O dimensionamento automático é realizado com base nos requisitos da sua empresa e fica transparente para os usuários. Um cluster ApsaraMQ for RabbitMQ oferece alto desempenho, mesmo que um grande número de mensagens esteja acumulado.

Recursos avançados

É possível usar o recurso de roteamento global de mensagens da mesma maneira que o Shovel. Esse recurso é estável e confiável, podendo ser usado para encaminhar mensagens de uma fila para outra fazer ou uma troca em poucos cliques. A origem e o destino podem pertencer a diferentes instâncias ou regiões. Depois que o número de tentativas de consumo de uma mensagem exceder o valor limite especificado, a mensagem entra na fila de inatividade. Este mecanismo evita o problema em que o sistema não pode consumir novas mensagens quando uma única mensagem não pode ser consumida.

Comparação entre ApsaraMQ for RabbitMQ e RabbitMQ de código aberto

Item ApsaraMQ for RabbitMQ RabbitMQ de código aberto
Protocolos AMQP 0-9-1 AMQP 0-9-1 e AMQP 1-0
Clientes Clientes de código aberto de todas as versões e todas as linguagens Clientes de código aberto de todas as versões e todas as linguagens
Arquitetura do sistema O ApsaraMQ for RabbitMQ oferece serviços em clusters distribuídos que não contêm nós primários. Todos os nós de um cluster oferecem serviços equivalentes. O RabbitMQ de código aberto foi desenvolvido usando Erlang. Os problemas que ocorrem quando ao usar o serviço são difíceis de resolver. Um cluster RabbitMQ de código aberto implantado no modo de alta disponibilidade não pode ser dimensionado. Isso causa gargalos no desempenho. O RabbitMQ de código aberto consome memória para oferecer serviços. Portanto, é possível ocorrer uma série de problemas que diminuem a estabilidade dos seus negócios.
Acúmulo de mensagens O acúmulo de um grande número de mensagens não prejudica o desempenho dos clusters. O RabbitMQ de código aberto não é capaz de acumular um grande número de mensagens. Podem ocorrer falhas se uma grande quantidade de memória for utilizada para acumular um número grande de mensagens.
Dimensionamento Cada fila oferece suporte para um número ilimitado de transações por segundo (TPS) que pode ser ampliado. O serviço fornece instâncias altamente escaláveis e suporta escalonamento automático que é transparente para os usuários. O TPS máximo de uma fila aumenta linearmente conforme o número de nós da fila. Para aumentar o número máximo de consultas simultâneas que podem ser processadas por um cluster de fila espelhada, é preciso atualizar a configuração do servidor.
Split-brain O problema de split-brain não ocorre porque um cluster não contém um nó primário, e todos os nós de um cluster oferecem serviços equivalentes. É possível perder pulso de clusters por diferentes motivos. Isso pode fazer com que o problema de split-brain ocorra. Quando o sistema está sendo recuperado, seu serviço pode ser interrompido, podendo ocorrer perda de dados.
Observabilidade O ApsaraMQ para RabbitMQ oferece os recursos de monitoramento e alerta. O Prometheus é integrado para monitorar o envio de mensagens em várias dimensões, como instâncias, hosts virtuais, trocas e filas. As métricas incluem taxa de mensagens, número de mensagens acumuladas, número de conexões, número de canais e QPS de chamada para cada operação da API. Você pode chamar as operações da API para consultar métricas e criar um sistema de monitoramento e alerta com base nos dados de monitoramento. O Prometheus está integrado no RabbitMQ V3.8.0 e versões posteriores. No entanto, não há suporte para alertas e monitoramento detalhados.

Recursos

Totalmente compatível com RabbitMQ de código aberto

Fila

Permite armazenar mensagens em filas e fornece partições para armazenar mensagens. Um consumidor pode consumir mensagens por cluster.

Troca

Permite vincular trocas a filas e especificar chaves de ligação. Assim, uma troca pode filtrar mensagens que correspondam a regras de roteamento específicas e encaminhar as mensagens para uma ou mais filas. A troca também pode enviar mensagens que não correspondem às regras.

Host virtual (vHost)

Usa vHosts para atender aos requisitos de isolamento, como isolamento de produção e teste e divisão do serviço.

Diferentes tipos de trocas

Troca de distribuição

Encaminha mensagens para todas as filas onde a troca atual está vinculada

Troca direta

Encaminha uma mensagem para a fila cuja chave de ligação é a mesma que a chave de roteamento da mensagem

Troca de tópicos

Roteia uma mensagem para uma ou mais filas com base no resultado da correspondência difusa entre a chave de roteamento da mensagem e as chaves de ligação da troca atual

Ferramentas completas de O&M

Uma série de ferramentas de O&M completas, úteis e fáceis de usar para ajudar a identificar e resolver problemas

Monitoramento e alerta

Monitora conexões ativas, acúmulo de mensagens e entrega de mensagens atrasadas para ajudar a identificar problemas rapidamente

Relatórios de recursos

Permite consultar dispositivos, gerenciar dispositivos por grupo e coletar estatísticas sobre mensagens recebidas e enviadas

APIs RESTful

Fornece gerenciamento de recursos de autoatendimento, O&M de autoatendimento e APIs RESTful

Suporte atualizado para você

Consulta individual de pré-venda, suporte técnico 24/7, resposta mais rápida, e mais chamados.

Consulta individual de pré-venda

Consultoria de especialistas em nuvem. Saiba mais

Suporte técnico 24/7

Tempo de serviço estendido de 10 horas, 5 dias por semana para 24/7. Saiba mais

Seis chamados grátis por trimestre

O número de chamados grátis dobrou de 3 para 6 por trimestre. Saiba mais

Resposta mais rápida

Encurte o tempo de resposta pós-venda de 36 horas para 18 horas. Saiba mais
phone Fale Conosco
Oi, eu sou o assistente de IA da Alibaba Cloud!
Posso ajudar com perguntas e soluções.