MSMQ только 3 раза пытается получить сообщение, прежде чем произойдет ошибка - PullRequest
1 голос
/ 28 апреля 2010

У меня есть несколько сообщений в моей очереди. Теперь я замечаю, что после 3 попыток сбой хоста службы. Это нормальное поведение? Откуда берется 3 раза? Я думал, что это пришло от receiveRetryCount. Но я установил это на 1.

В моей очереди 20 сообщений, ожидающих обработки. Операция WCF, отвечающая за обработку сообщения, поддерживает транзакцию, поэтому, если она не может обработать сообщение, оно выбросит ее, чтобы сообщение осталось в очереди.

Я не думал, что это из-за ошибки ServiceHost после нескольких попыток. Эта часть где-то задокументирована?

Я использую службу MSMQ на моей машине winxp.

Меня больше интересует документация, указывающая, что узел службы выйдет из строя после нескольких повторных попыток. Эта часть правда?

Ответы [ 2 ]

2 голосов
/ 28 апреля 2010

Я думаю, что нашел причину, по которой он неисправен.

Существует свойство привязки msmq с именем ReceiveErrorHandling, которое по умолчанию установлено в Fault, что приведет к сбою прослушивателя канала, когда receiveRetryCount будет максимально увеличен.

1 голос
/ 28 апреля 2010

Не уверен, что это - я сам не использую MSMQ.

Но посмотрите замечательные серии постов в блоге Тома Холландера о MSMQ, WCF и IIS: как заставить их играть красиво ( часть 1 , часть 2 и часть 3 ).

...