2013-06-02 2 views
1

구독에 대해 WCF를 사용하는 대기열 메시지에 Microsoft Azure ServiceBus를 사용하고 있습니다. 재시도 논리를 구현하려고합니다. 나는 Peak/Lock을 사용하여 메시지를보고 나서 메시지에 대한 로컬 프로세싱을해야한다. 해당 처리가 실패하면 다시 처리를 시도 할 수 있도록 메시지의 잠금을 해제합니다. 문제는 내가 처리 시도 사이에 지연을 빌드해야합니다. 현재 대기열에 다시 저장되고 즉시 처리됩니다. 시도 사이에는 약 2 분이 필요합니다.Azure ServiceBus 재시도 지연

답변

1

특정 큐의 메시지를 다시 처리하기 전에 항상 2 분을 기다려야하는 경우 큐의 잠금 시간 제한을 2 분으로 구성 할 수 있습니다 (더하여 예상 시간 메시지 처리) 잠금을 해제하는 대신 잠금이 만료되도록하십시오. 이것은 처리 시간을 주시하고 필요할 경우 잠금 시간을 연장해야하는 단점이 있습니다.

또 다른 옵션은 메시지를 받고 완료하고, 2 분 후에 예정된 배달을 설정 한 다음 메시지를 다시 보낼 수 있습니다. 이것은 당신이 그것을 소비하고 그것을 확인할 필요가있는 단점을 가지고 있습니다. 이것은 당신이 메시지를 다시 보낼 기회를 얻기 전에 프로세스가 죽는 등의 위험을 안고 있습니다.