RabbitMQ Trigger
Descubra mais sobre o RabbitMQ Trigger e saiba como utilizá-lo na Digibee Integration Platform.
O RabbitMQ Trigger é responsável pelo consumo das mensagens de um broker RabbitMQ.
Parâmetros
Dê uma olhada nas opções de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB)
.
Account
Nome da conta que será utilizada (a conta deve ser do tipo basic).
N/A
String
Hostname
Endereço do host do RabbitMQ.
N/A
String
Port
Porta onde o RabbitMQ está escutando.
5672
Inteiro
Virtual Host
Configuração de host virtual que define o tenant do RabbitMQ que se deseja acessar.
/
String
Auto Acknowledge
Se “true”, a mensagem será confirmada assim que chegar ao trigger e não esperará um retorno do pipeline associado; se "false", a mensagem ficará pendente enquanto o pipeline a estiver processando.
False
Booleano
Binary Message
Se "true", define que a mensagem recebida será binária e, portanto, seu conteúdo será apresentado como base64; se "false", a mensagem será apresentada como texto.
False
Booleano
Maximum Timeout
Tempo máximo (em milissegundos) para o pipeline processar informação antes de retornar uma resposta. Padrão: 300000. Limite: 900000.
300000
Inteiro
Expiration
Tempo máximo de espera da mensagem numa fila de pipeline.
600000
Inteiro
Allow Redelivery of Messages
Se "true", uma execução de pipeline será re-executada em caso de erro; se "false", não haverá re-execução em caso de erro.
False
Booleano
O cliente RabbitMQ não permite a limitação do tamanho de mensagens. Caso mensagens muito grandes sejam enviadas, a infraestrutura de triggers da Digibee poderá recusá-las. Não aconselhamos o envio de mensagens grandes através de um barramento de mensagens.
Esse trigger possui 2 estratégias de acknowledge (confirmação de recebimento) de mensagens:
Acknowledge automático
A confirmação de cada mensagem recebida pelo trigger acontece de forma automática e imediata no recebimento e o broker entende que ela foi entregue. Por um lado, o acknowledge automático garante um grande desempenho, mas por outro não impede a perda da mensagem caso o pipeline associado não a processe ou a processe com falha.
Acknowledge manual
Cada mensagem recebida pelo trigger permanece em "unchecked", um estado de não confirmação, enquanto estiverem sendo processadas pelo pipeline. No acknowledge manual, o broker RabbitMQ entende que a mensagem está pendente e, caso haja qualquer problema na infraestrutura do trigger ou o pipeline responda com erro, a mensagem em questão pode ser reprocessada. O número de consumers configurados para o pipeline dita quantas mensagens podem ser processadas ao mesmo tempo. Para isso, o tamanho de prefetch do RabbitMQ é configurado com o mesmo valor de consumers do pipeline.
Consumers
A configuração de consumidores feita no momento de implantação de um pipeline impacta diretamente no throughput de recebimento e saída de mensagens quando o RabbitMQ Trigger é ativado. Caso o auto acknowledge esteja desabilitado, a preocupação com o número de consumidores se torna ainda mais importante. Isso acontece porque o número de mensagens simultâneas sendo processadas é igual ao número de consumidores configurados.
Declaração de filas, routing keys e exchanges
O RabbitMQ Trigger não declara parâmetros de configuração de filas, routing keys e exchanges no broker RabbitMQ. É esperado que toda a configuração já esteja feita para que o trigger possa consumir mensagens de filas.
Formato de mensagem na entrada do pipeline
Pipelines associados com o RabbitMQ Trigger recebem a seguinte mensagem como entrada:
Atualizado