Продолжается подписка на наши издания! Вы не забыли подписаться?

Microsoft Message Queuing и .Net**

Олег Степанов

Цель этой статьи – познакомить читателя со средствами работы с MSMQ, предлагаемыми .Net Framework. В этом журнале уже публиковались материалы по работе с MSMQ (об MSMQ рассказывалось, например, в статье «QC компоненты Windows 2000 vs MSMQ» в 3 квартале 1999 года. Эту статью можно прочитать также и на нашем сайте), поэтому здесь мы не будем подробно разбираться в принципах работы MSMQ.

Примеров, когда использование MSMQ делает жизнь проще, множество. Например, у вас есть система обработки заказов. Предположим, что эти данные собирают ваши служащие с помощью своих лаптопов (или даже КПК, ибо поддержка MSMQ есть и в Windows CE). Клиентские приложения на компьютерах агентов обрабатывают данные и отсылают их на сервер в виде сообщений. Так как компьютеры большую часть времени находятся вне сети, сообщения сохраняются в очереди, а в момент подключения к сети все данные, собранные за день, автоматически отправятся на сервер. Более реалистичный пример – работа нескольких офисов через неустойчивый канал связи. При этом невозможна связь в реальном времени, но использование MSMQ позволяет практически без задержек синхронизировать работу офисов в моменты хорошей связи, и обеспечить работу в офлайн-режиме в случае обрыва связи. Таких примеров можно привести великое множество.

Как это работает

Вкратце напомним принципы работы Microsoft Message Queuing. MSMQ осуществляет доставку сообщений на машины сети Microsoft Message Queuing network. При этом гарантируется, что сообщение будет доставлено, если к моменту доставки оно еще актуально (вопрос актуальности сообщений будет рассмотрен позже). Доставка обеспечивается даже в случае временной неработоспособности части сети, при этом оно будет послано после возобновления соединения, что обеспечивает в некоторых случаях возможность автономной работы компонентов системы.

Обмен сообщениями с помощью MSMQ осуществляется внутри сети MSMQ. Сеть MSMQ представляет собой набор машин, соединенных между собой. С каждой из связей связана стоимость передачи данных, задаваемая администратором при настройке сети. Эти стоимости играют роль при выборе маршрута доставки сообщения – выбирается маршрут с наименьшей суммарной стоимостью. Выбором маршрутов занимаются специально выделенные серверы маршрутизации (routing servers)...

**полностью статью можно прочитать в печатной версии журнала

Copyright © 1994-2016 ООО "К-Пресс"