Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод указания по лабор работам.rtf
Скачиваний:
8
Добавлен:
14.11.2019
Размер:
7.3 Mб
Скачать

Настройка msmq

Перед началом разработки приложения, использующего MSMQ необходимо убедиться, что данная служба установлена на компьютере, так как MSMQ не устанавливается по умолчанию. Проверить доступность компонента можно одним из двух способов:

1. Щелкнуть правой кнопкой по ярлыку «Мой компьютер» и в контекстном меню выбрать пункт «Управление». В результате выполненного действия будет запущена консоль «Управление компьютером». В дереве консоли в разделе «Службы и приложения» вы должны увидеть раздел «Очередь сообщений». Если соответствующее поддерево открывается без сообщений об ошибке, значит, компонент установлен в системе и нормально функционирует.

2. В окно «Server Explorer» Visual Studio .NET необходимо открыть узел Servers. В списке доступных сервисов должен присутствовать раздел «Messages Queues», в котором должны присутствовать разделы Public Queues, PrivateQueues и Journal Queues.

Если данные процессы завершаются сообщениями об ошибке, необходимо установить MSMQ. Для этого нужно открыть «Панель управления», выбрать пункт «Программы и компоненты», затем перейдите по ссылке «Включение или отключение компонентов Windows». В списке компонентов выберите «Message Queues», нажмите «OK» и служба будет установлена.

После инсталляции MSMQ убедитесь в работоспособности компонента приведенными выше способами.

Приложение может вести поиск нужной ему очереди по ряду критериев. Это возможно при использовании механизма общих очередей в Microsoft Message Queuing, что требует развертывания Microsoft Active Directory.

Название

Тип

Описание

Public Queue

Очереди пользователя

Очереди, которые копируются по всей сети и доступны для других машин

Private Queue

Очереди, доступные только на локальной машине

Administration Queue

Содержит подтверждения посылки сообщений по сети

Response Queue

Содержит сообщения ответа, возвращаемые посылающим приложением, когда сообщение получено приложением назначения

Journal Queue

Системные очереди

Хранит копии посланных сообщений, а также копирует сообщения, удаляемые из очереди

Dead-Letter Queue

Хранит копии сообщений, которые не удается доставить или срок хранения которых в очереди истек

Report Queue

Содержит маршруты, которым следовали сообщения

Private System Queue

Содержит административные и уведомляющие сообщения, которые должна обработать система

После создания (или программно, или с помощью Computer Management) очередь существует до тех пор, пока не будет удалена или явно через Computer Management, или вызовом метода Delete для ее объекта. Фактически, очередь можно создать, чтобы она существовала вечно, служа удобным хранилищем для сообщений. После того, как сообщения пересланы очереди, они живут там до тех пор, пока не будут прочитаны или удалены. Прочитанное сообщение автоматически удаляется из очереди. Еcли чтение сообщения является частью транзакции, которая завершается неудачей, сообщение возвращается в очередь. Если нужно узнать, какие сообщения имеются в очереди, в нее можно подсмотреть, не читая их (а, значит, оставляя их в очереди). При работе с приватными очередями, создавая объект, следует указывать имя очереди. При попытке доступа к очередям по сети можно воспользоваться методами перечисления, возвращающими доступные очереди, и, основываясь на полученных свойствах, обратиться к определенной очереди.

Для программного доступа очередям сообщений необходимо указать ссылку на сборку System.Messaging в пункте меню «Project|Add Reference…».