Механизм уведомления о событиях - MSMQ - PullRequest
3 голосов
/ 21 января 2011

Я работаю над веб-приложением, которое представляет собой своего рода портал предложений, где покупатель публикует свои вакансии, а поставщик услуг делает ставку против них.Приложение разрабатывается с использованием EF 4.0, .Net 4.0, ASP.NET и Sql Server 2008. Сейчас существует множество уведомлений, которые необходимо сгенерировать и отправить соответствующим сторонам / пользователям.Некоторые примеры событий: если работа отменена, или была выбрана ставка, или провайдер услуг опубликовал сообщение о работе и т. Д. Всего существует 14 таких событий.

Теперь, что мое требование, чтобы иметь возможность отправлять электронную почту, смс соответствующим сторонам.Также вошедший в систему пользователь должен иметь возможность просматривать эти уведомления через веб-форму при входе в систему.

Приложение требует, чтобы уведомление не пропускалось, поэтому я ищу здесь масштабируемое и надежное решение.Я являюсь экспертом MSMQ и сервисным брокером sql для управления очередью для этих сообщений / уведомлений, но я не совсем уверен, правильно ли я следую.Также я хотел бы рассмотреть такие факторы, как управление транзакциями, время безотказной работы и масштабируемость и т. Д. Я был бы признателен за любую помощь в этом отношении.

Ответы [ 2 ]

2 голосов
/ 21 января 2011

Я бы посоветовал изучить использование nServiceBus, поскольку оно удовлетворяет большинству ваших требований.Вы также можете посмотреть на шаблон CQRS.Вы можете найти подробную информацию об обоих, заглянув на сайт авторов nServiceBus http://www.udidahan.com

0 голосов
/ 09 января 2013

В качестве альтернативы nServiceBus вы можете посмотреть на Mass Transit

http://masstransit -project.com /

http://code.google.com/p/masstransit/

Mass Transit построен на основе подсистемы обмена сообщениями (MSMQ) и упрощает такие вещи, как управление подписками, сбои, саги (длительные транзакции).

Мы используем его в производственной среде, и он работает надежно.Кроме того, он имеет простой и естественный API и вполне расширяемый.

...