Асинхронная связь с WCF - PullRequest
0 голосов
/ 23 марта 2011

Я занимаюсь разработкой универсального объекта регистрации, который будет использоваться во всех наших будущих приложениях. Он отправит журнал в MSMQ, который затем асинхронно отправит его на наш сервер, который запишет это сообщение в базу данных.

В настоящее время я пытаюсь понять архитектуру того, как это будет работать. На стороне клиента, после отправки журнала в MSMQ, MSMQ затем отправит журнал в WCF для отправки на сервер (который, как я полагаю, будет иметь другую конечную точку WCF, получающую сообщения)? По сути, я спрашиваю, в каком порядке будут проходить журналы? Я читал о netMsmqBinding для WCF, это то, что мне нужно для отправки журнала из MSMQ в WCF, а затем я могу использовать basicHttpBinding для отправки его из WCF в WCF на стороне сервера?

Что-то вроде:

[Клиентское приложение] -> Logger -> MSMQ -> WCF ----------> [Сервер] WCF -> DB

1 Ответ

2 голосов
/ 23 марта 2011

WCF имеет netMsmqBinding, который может обрабатывать как клиентские, так и серверные сообщения.Если вы используете его, MSMQ будет почти невидимым для вас.Вы отправите сообщение службе WCF, оно будет отправлено в MSMQ, а WCF на стороне сервера выберет его и вызовет метод, как и для любой другой привязки.

Если у вас есть опыт создания службы WCF, вам следуетто же самое, но также создайте MSMQ Queue.

Вот полезные ссылки: http://sukasom.wordpress.com/2008/08/18/wcf-and-msmq-part-1/, http://msdn.microsoft.com/en-us/library/ms752217.aspx

...