Практическое руководство. Создание очередей
Обновлен: Ноябрь 2007
Цель создания очереди заключается в предоставлении ресурса, с которым будут взаимодействовать компоненты обмена сообщениями. Например, необходимо создать систему обработки заказов, которая помещает заказы в очереди в порядке их поступления из пунктов продаж или от прямых заказчиков, делающих заказы на веб-узле. Можно начать с создания очереди OrderEntry в системе очередей сообщений. Все компоненты, создаваемые для обработки заказов, будут взаимодействовать с этой очередью.
Существует два способа создания очереди: из окна Обозревателя серверов или при помощи конструктора Create из кода. Убедиться в том, что очередь успешно создана, можно в окне Обозревателя серверов или в окне Управление компьютером системы Windows 2000.
Общую очередь можно создать на своем компьютере или на любом другом компьютере, поддерживающем очереди сообщений, к которому имеются права доступа в качестве владельца домена или администратора системы. Кроме того, можно создавать частные очереди, но только на своем компьютере. Дополнительные сведения о правах доступа см. в разделе Безопасность очереди сообщений или в разделе "Контроль за доступом к очередям сообщений" в документации по диалоговому окну Управление компьютером.
Примечание. |
---|
Следует учитывать разницу между созданием очереди и созданием экземпляра компонента MessageQueue. При использовании метода Create в сети очередей сообщений создается новая очередь, а не компонент проекта или приложения. При создании экземпляра компонента MessageQueue внутри проекта создается компонент, который ссылается на существующую очередь в операционной системе. |
Также возможна настройка компонента установки на создание новой или поиск существующей очереди при развертывании приложения. Дополнительные сведения см. в разделе Управление настраиваемыми действиями при развертывании.
Создание очереди в обозревателе серверов
Откройте Обозреватель серверов и выберите сервер, на котором необходимо создать очередь. Дополнительные сведения см. в разделе Практическое руководство. Подключение и инициализация обозревателя серверов/обозревателя баз данных.
При добавлении в проект Visual Studio экземпляра компонента MessageQueue система автоматически создает ссылки и операторы импорта, которые необходимы для доступа к пространствам имен и классам.
Щелкните правой кнопкой мыши узел Очереди сообщений.
Щелкните правой кнопкой мыши Общие очереди или Частные очереди в зависимости от типа очереди, которую необходимо создать, и выберите пункт Создать очередь.
В диалоговом окне Создание очереди сообщений введите имя очереди.
Если требуется, чтобы очередь была транзакционной, выберите пункт Сделать очередь транзактной. Дополнительные сведения см. в разделе Транзакционная обработка сообщений.
Примечание. Создание общей очереди сообщений может занять больше времени, чем обычно, если домен большой и имеет много контроллеров. Определенное время уходит на тиражирование новой общей очереди с контроллера домена компьютера на все остальные контроллеры домена. Поэтому процесс тиражирования может вызвать некоторую задержку.<+]
Создание общей очереди программными средствами
Щелкните правой кнопкой мыши проект и выберите пункт Добавить ссылку. Добавьте ссылку на System.Messaging.dll.
Используйте метод Create для создания общей очереди на своем компьютере. Код должен выглядеть следующим образом:
System.Messaging.MessageQueue.Create("myMachine\MyQueue")
System.Messaging.MessageQueue.Create(@"myMachine\MyQueue");
Совет. С помощью перегрузки метода Create можно задать создание транзакционной очереди. Кроме того, при указании пути можно использовать точку ( . ) для обозначения локального компьютера.
Примечание о безопасности. При создании очереди сообщений имейте в виду, что такой ресурс уже может существовать. Другой процесс (возможно, вредоносный) уже мог создать ресурс и получить к нему доступ. При добавлении данных в очередь сообщений они становятся доступными другим процессам. Сведения о существующих очередях см. в разделе Практическое руководство. Получение очередей.
Создание частной очереди программными средствами
Используйте метод Create, указав необходимый синтаксис, Private$, чтобы создать частную очередь на своем компьютере. Код должен выглядеть следующим образом:
System.Messaging.MessageQueue.Create(".\Private$\MyPrivateQueue")
System.Messaging.MessageQueue.Create(@".\Private$\MyPrivateQueue");
Убедиться в том, что очередь сообщений успешно создана, можно в окне Обозревателя серверов или в окне Управление компьютером системы Windows 2000.
Проверка создания очереди сообщений
В Обозревателе серверов обновите узел Очереди сообщений, щелкнув правой кнопкой мыши Очереди и выбрав пункт Обновить. Обновление списка очередей может занять несколько секунд.
-либо-
Выполните следующие действия для получения информации об очередях сообщений в системе Windows 2000:
Щелкните правой кнопкой мыши значок Мой компьютер на рабочем столе и выберите пункт Управление.
В появившемся диалоговом окне разверните узел Службы и приложения и далее разверните пункт Очереди сообщений. На этом узле можно найти соответствующую очередь и содержащиеся в ней сообщения.
См. также
Задачи
Практическое руководство. Создание экземпляров компонента MessageQueue