RocketMq(3) - 트랜잭션이 포함된 메시지 보내기
1748 단어 MQ
트랜잭션 지원 메시지
RocketMq는 트랜잭션이 있는 메시지를 전송하여 데이터의 최종 정합성을 유지할 수 있도록 지원합니다.다음은 제가 간단하게 사무가 있는 소식을 실현하겠습니다.
생산자단 코드
public LocalTransactionState checkLocalTransactionState(MessageExt messageExt) {
// messageExt body ,
return LocalTransactionState.COMMIT_MESSAGE;
}
RocketMq3.버전 0.8 이후 메시지 확인
우리는 스스로 메시지를 해결하는 check listener 리셋 메커니즘을 필요로 한다. 우리는 생산자가 로컬 업무를 수행할 때 현재 메시지를 다른 표에 저장할 수 있다. 가장 좋은 것은 모든 메시지가 하나의 Id를 필요로 하고, 이 쪽에서 다른 작업이나 라인을 만들어서 메시지의 실패를 확인하는 메시지를 소비자에게 보내는 것이다.그리고 소비자는 성공적으로 해결된 메시지 목록을 저장하기 위해 표를 작성한 다음에 일정 시간 동안 성공적으로 소비된 정보를 꺼내고 소비자는 표의 메시지 상태 코드를 수정해야 한다.이렇게 하면 확인 소식이 실패한 원인을 해결할 수 있다.사실 이것도 사무 정보를 지원하지 않는 메시지 대기열에서 분포식 사무의 최종 일치성을 실현하는 데 사용할 수 있다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
RabbitMQ 메시지 보내기 후 반환 메시지 얻기생산자 소비자 출력 ===================================================================+++=======================================...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.