관련 프로세스 간의 통신에 Microsoft Message Queue (System.Messaging
)를 사용하는 C#으로 시스템을 구현했습니다. 본질적으로 많은 수의 Sender 서비스가 대기열에 넣을 메시지를 생성하며 수 신자 프로세스는 대기열을보고 대기열에있는 메시지를 가져옵니다.Microsoft Message Queue - 우선 순위 플래그 또는 별도의 대기열?
다른 사람들보다 우선해야 할 메시지가 있다는 말을 들었습니다.
메시지가 파도에 올 가능성이 잠재적으로 메시지의 매우 큰 숫자가 1 안타 (예를 들어 천 정도) 최종 전에 지연이있을 수 있습니다, 그래서에서 큐에 배치되는 경우가있을 수 있습니다 메시지가 처리됩니다. 내 원래 생각
는 다른 스레드에 수신기의 각 처리에 의해 감시되는 제 2 우선 메시지 큐를 가지고 있었다. 이 대기열에는 훨씬 적은 수의 메시지가 있으므로 지연이 적습니다.
그럼 나는 Message.Priority
속성을 우연히 발견했습니다.
그래서 :
나는 다른 큐를 구현하는 것보다이 우선 순위 플래그를 대신 사용해야합니까? 이 메시지를 나머지 메시지보다 앞서 성공적으로 그리고 효율적으로 점프합니까? 그렇다면 어떤 조건과 부작용이있을 수 있습니까?
아니면 원본 계획을 따르고 우선 순위 메시지를위한 다른 대기열을 구현해야합니까?
니스, 고마워. 나는 주변에 몇 가지 어려움이 있을지 걱정했다. – Damovisa