홈>
ReceiveAndDelete 모드에서 Service Bus로부터 메시지를 받고 완료 후 메일을 보내는 매우 긴 계산 프로세스를 실행하기 시작합니다. 장기 실행 메소드의 모든 메소드에 오류 로깅이 있습니다. 그러나이 방법은 10-15 분 동안 실행되며 전자 메일을 보내지 않고 오류를 기록하지도 않습니다. 메시지의 TTL과 관련이있을 수 있습니다.
어떻게해야합니까?
private static async Task ProcessMessagesAsync(Message message, CancellationToken token)
{
try
{
IQueueClient queueClient = new QueueClient(serviceBusConnectionString, serviceBusQueueName, ReceiveMode.ReceiveAndDelete);
var receivedMessageTrasactionId = Convert.ToInt64(Encoding.UTF8.GetString(message.Body));
// Very Long Running Method
await DataCleanse.PerformDataCleanse(receivedMessageTrasactionId);
// to avoid unnecessary exceptions.
}
catch (Exception ex)
{
Log4NetErrorLogger(ex);
throw ex;
}
}
- 답변 # 1
관련 자료
- Azure Data Catalog와 Azure Purview의 차이점은 무엇입니까?
- microsoft graph api - azure 서비스 버스 메시지 ID us 이메일 ID
- Azure WebJob에서 SignalR 메시지를 Azure SignalR 서비스로 보내지 않음
- Azure PowerShell에서 사용자 지정 오류 메시지를 표시하고 종료합니다
- java - 주기적으로 데이터를 수신 할 때 어떻게 내 InputStream의 메시지가 null이되지 않습니까?
- azureservicebus - Azure Message와 BrokeredMessage 간의 호환성
- architecture - Azure Function ServiceBusTrigger 메시지 프로세서 디자인
- azureservicebus - Azure Service bus에서 가능한 모든 메시지 탐색
- azureservicebus - azure 서비스 버스 주제 - 구독 메시지가 수신됩니다 소비자/고객을 찾는 방법
- azureservicebus - DeliveryCount는 Microsoft Azure ServiceBus의 메시지마다 다릅니다
- c# - WebSocket-Sharp 및 IBM Watson TTS를 사용하여"이진 데이터를 수신하기 전에 JSON 헤더 메시지를 예상했습니다"오류
- Java 프로그램을 사용하여 Azure Service Bus 큐에서 보류중인 메시지를 받습니까?
- Azure Logic App을 사용하여 Outlook 메시지 본문에서 https 링크 팔로우
- Azure Logic App Skype 커넥터를 사용하여 스카이프 그룹에 메시지를 보내려면 어떻게해야합니까?
- Python의 Azure 서비스 버스 메시지에서 C # 개체를 읽는 방법
- c# - azure service bus 주제 - 가입 메시지 만료
관련 질문
- c# : ServiceBus 주제가 아직 없는 경우 생성
- c# : vs를 통해 게시할 때 azure 기능의 앱 이름 선택
- c# : Azure 함수 HTTP 트리거 Blob Storage 출력 바인딩
- c# : 내 'AutoImport' 기능 버그
- c# : Docker compose 빌드/Docker 빌드 연결이 macos에서 nuget을 거부했습니다.
- c# : Visual Studio Code에서 .NET Core Azure 기능을 실행하는 데 문제가 있습니다. 미리 정의된 유형 'System.Object'가 정의되지 않았거나 가져오지 않았습니다.
- c# : 예약된 경우 ServiceBusTrigger가 실행되지 않는 Azure 함수
- c# : EventHub에서 특정 메시지 읽기
- Azure.Messaging.ServiceBus의 ServiceBusClient 클래스에서 토큰 만료 시간
- c# : 로그인한 사용자가 없는 애플리케이션의 흐름 대신
ReceiveAndDelete
에서 메시지를받을 때 메시지의 시간은 중요하지 않습니다. 클라이언트 쪽에서 메시지가 수신되면 브로커에서 제거됩니다. 오류가 발생하면 메시지가 사라집니다. 그래서PeekLock
를 사용하는 것이 좋습니다. 메시지를 검색하고 처리하는보다 안전한 메커니즘을 원할 때 수신 모드. 주의 사항은 처리 시간입니다. 충분한 정보가 있기 때문에 그것에는 들어 가지 않을 것이지만 잠금 갱신의 필요성을 없애기 위해 메시지 잠금 또는 오프로드 처리를 갱신 할 수 있습니다. 이 답변에서 대안을 찾을 수 있습니다.