SQL Service 2005 Service Broker를 처음 사용했습니다. 대기열을 만들고 성공적으로 대화를 나눴습니다. 그러나 "스로틀"메시지를 정렬하고 싶습니다. 어떻게해야하는지 잘 모르겠습니다.Service Broker 큐 플러딩을 줄이는 방법은 무엇입니까?
메시지는 다중 사용자 응용 프로그램에서 호출하는 저장 프로 시저에서 전송됩니다. 20 명의 사용자가이 proc을 30 초 내에 각각 한 번 호출하게 만들면 한 번만 전송하면됩니다. 그래서 메시지가 지난 30 초 이내에 보내 졌는지 확인하기 위해 proc에서 어떤 방법이 필요하다고 생각합니까? 그렇게 할 수있는 방법이 있습니까?
내가 가진 한 가지 아이디어는 요청 대기열 활성화 proc가 호출되었는지를 나타내는 "응답"대기열로 메시지를 보내는 것입니다. 그럼 내 저장된 proc (사용자 애플 리케이션에 의해 호출) 특정 메시지가 최근에 호출되었는지 참조하십시오. 문제는 응답 대기열을 엉망으로 만들고 싶지 않다는 것입니다. 메시지가 존재하는지 확인하기 위해 대기열 (수신하지 않음)에서 엿볼 수 있습니까?
또는 내가 수행 한 작업을 수행하는 더 간단한 방법이 있습니까?