Реализация 24 очереди с использованием MSMQ и WCF - PullRequest
0 голосов
/ 28 марта 2010

Я скоро запускаю проект, который требует, чтобы сообщения находились в очереди в течение 24 часов, потому что база данных не может иметь никаких обновлений в определенное время месяца. Служба также должна быть размещена на Windows Server 2003, что означает, что она должна быть службой Windows.

Также требуется, чтобы служба использовала WCF, чтобы через 12 месяцев при переходе на Windows Server 2008 служба могла размещаться в iis 7. В настоящее время мне интересно, является ли MSMQ лучшим способом справиться с этим.

Я изучал такие темы, как обработка ядовитых сообщений и очереди недоставленных писем, но ничего такого, что на самом деле не покрывало того, что я намерен делать. Кто-нибудь может порекомендовать образец или учебник для этого?

Заранее спасибо

1 Ответ

1 голос
/ 28 марта 2010

Да, похоже, это идеальный сценарий для WCF и MSMQ. Использовать MSMQ должно быть намного проще, чем создавать собственный механизм очередей с той же надежностью. Вам нужно заглянуть в Message.TimeToBeReceived Свойство для истечения времени ожидания сообщения.

Если интервал, указанный в свойстве TimeToBeReceived, истекает перед удалением сообщения из Очередь сообщений отбрасывает сообщение одним из двух способов. Если свойство UseDeadLetterQueue сообщения верно, сообщение отправлено очередь недоставленных сообщений. Если UseDeadLetterQueue ложно, сообщение игнорируется.

Вот несколько хороших начальных руководств по WCF с MSMQ: link1 и link2

...