Quarkus에서 카프카를 사용하지 않고 오류를 수정하도록 구성
4034 단어 quarkuskafkabraziliandevsjava
Já vou assumir que você sabe o que é o Kafka, já manja um pouco de Quarkus e tem tudo configurado. 당신은 당신이 필요합니다.
O Quarkus possui 3 formas diferentes para tratar uma exceção quando no método com a anotação @Incoming: Parar de consumir mensagens, ignorar e DLQ(dead-letter queue).
Parar de consumir mensagens
Esse é o tratamento padrão. 정상적인 서비스를 계속 유지하십시오. Porém, as mensagens não serão mais consumidas até que alguém intervenha na mensagem, resolva o que precisar ser resolvido e então reinicie o serviço.
Caso nada tenha sido configurado, será utilizado essa opção.
무시
Nesse modo, caso ocorra alguma exceção, o Quarkus diz pro Kafka que conseguiu consumir corretamente a mensagem e finge que o erro nunca existiu.
Para configurar é muito simples. 추가로 application.properties를 추가하지 마십시오:
mp.messaging.incoming.<nome do canal>.failure-strategy=ignore
배달 못한 편지 대기열
Nesse modo, quando ocorre uma exceção, o Quarkus ainda irá informar ao Kafka que a mensagem foi consumida, porém, irá enviar a mensagem para uma fila especial onde essas mensagens poderão ser consumidas num momento oportuno.
Essa é a configuração que tem mais opções, mas é bem simples de entender:
mp.messaging.incoming.<nome do canal>.failure-strategy=dead-letter-queue
mp.messaging.incoming.<nome do canal>.dead-letter-queue.topic=<nome do tópico de DLQ>
mp.messaging.incoming.<nome do canal>.dead-letter-queue.key.serializer=<caminho para o serializador da chave>
mp.messaging.incoming.<nome do canal>.dead-letter-queue.value.serializer=<caminho para o serializador do valor da mensagem>
Por padrão, o nome do tópico será 또는 "dead-letter-topic-"+ nome do canal. Além disso, o Quarkus tentará support o caminho para o serializador. É possível seguir o palpite dele, ou configurar manualmente. O destino está nas suas mãos.
Uma outra observação Importante é que, se o tópico de DLQ não existe, então o Quarkus irá criar um novo novo tópico com as configurações padrões do Kafka (o que pode não ser a melhor abordagem possível).
고려사항
Esse é um assunto bem interessante e que eu queryia ter colocado lá no . Porém, achei que ficaria muita coisa.
Foi estranho fazer um post sem código, mas espero que tenham gostado!
Reference
이 문제에 관하여(Quarkus에서 카프카를 사용하지 않고 오류를 수정하도록 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/lucasscharf/configurando-tratamento-de-erros-no-kafka-com-quarkus-308d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Nesse modo, caso ocorra alguma exceção, o Quarkus diz pro Kafka que conseguiu consumir corretamente a mensagem e finge que o erro nunca existiu.
Para configurar é muito simples. 추가로 application.properties를 추가하지 마십시오:
mp.messaging.incoming.<nome do canal>.failure-strategy=ignore
배달 못한 편지 대기열
Nesse modo, quando ocorre uma exceção, o Quarkus ainda irá informar ao Kafka que a mensagem foi consumida, porém, irá enviar a mensagem para uma fila especial onde essas mensagens poderão ser consumidas num momento oportuno.
Essa é a configuração que tem mais opções, mas é bem simples de entender:
mp.messaging.incoming.<nome do canal>.failure-strategy=dead-letter-queue
mp.messaging.incoming.<nome do canal>.dead-letter-queue.topic=<nome do tópico de DLQ>
mp.messaging.incoming.<nome do canal>.dead-letter-queue.key.serializer=<caminho para o serializador da chave>
mp.messaging.incoming.<nome do canal>.dead-letter-queue.value.serializer=<caminho para o serializador do valor da mensagem>
Por padrão, o nome do tópico será 또는 "dead-letter-topic-"+ nome do canal. Além disso, o Quarkus tentará support o caminho para o serializador. É possível seguir o palpite dele, ou configurar manualmente. O destino está nas suas mãos.
Uma outra observação Importante é que, se o tópico de DLQ não existe, então o Quarkus irá criar um novo novo tópico com as configurações padrões do Kafka (o que pode não ser a melhor abordagem possível).
고려사항
Esse é um assunto bem interessante e que eu queryia ter colocado lá no . Porém, achei que ficaria muita coisa.
Foi estranho fazer um post sem código, mas espero que tenham gostado!
Reference
이 문제에 관하여(Quarkus에서 카프카를 사용하지 않고 오류를 수정하도록 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/lucasscharf/configurando-tratamento-de-erros-no-kafka-com-quarkus-308d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
mp.messaging.incoming.<nome do canal>.failure-strategy=dead-letter-queue
mp.messaging.incoming.<nome do canal>.dead-letter-queue.topic=<nome do tópico de DLQ>
mp.messaging.incoming.<nome do canal>.dead-letter-queue.key.serializer=<caminho para o serializador da chave>
mp.messaging.incoming.<nome do canal>.dead-letter-queue.value.serializer=<caminho para o serializador do valor da mensagem>
Esse é um assunto bem interessante e que eu queryia ter colocado lá no . Porém, achei que ficaria muita coisa.
Foi estranho fazer um post sem código, mas espero que tenham gostado!
Reference
이 문제에 관하여(Quarkus에서 카프카를 사용하지 않고 오류를 수정하도록 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/lucasscharf/configurando-tratamento-de-erros-no-kafka-com-quarkus-308d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)