Практическое руководство. Отправка сообщений в отключенные очереди
Обновлен: Ноябрь 2007
Есть две ситуации, когда сообщения не могут быть доставлены в свои очереди: когда недоступен компьютер, на котором находится очередь, или когда недоступен контроллер домена, который требуется для маршрутизации сообщения. Система очередей сообщений позволяет справиться с данными ситуациями, обеспечивая возможность отправки сообщений в случае отключения от сети или в случае недоступности нужного компьютера или контроллера. В таких случаях сообщения временно сохраняются в очередь на локальном компьютере или на одном из компьютеров, через которые проходит маршрут доставки, до тех пор, пока необходимые ресурсы не станут доступны для завершения доставки.
Например, существует центральная очередь, в которую записываются заказы, получаемые от разъездных торговых агентов. Торговые агенты работают в отключенном режиме большую часть дня, получая заказы с веб-узлов клиентов, и подключаются один раз в день для передачи всей накопленной информации в центральную очередь. Поскольку сообщения могут посылаться в очереди, когда отправитель не подключен, торговые агенты могут отправлять свои сообщения сразу после получения информации от клиента, а система будет накапливать эти сообщения до вечернего сеанса связи.
Процесс отправки сообщения в отключенную очередь практически идентичен процессу отправки сообщения в подключенную очередь. Не нужно производить никаких специальных настроек, чтобы обеспечить хранение сообщений во временных очередях в том случае, если нужная очередь окажется недоступной. Однако есть два важных отличия, которые следует учесть:
Если очередь недоступна, но контроллер домена работает, очередь для отправки сообщения необходимо задать по имени формата, а не по пути. Если очередь не подключена, контроллер домена не может правильно обработать путь к ней. Дополнительные сведения об именах форматов см. в разделе Рекомендации по созданию ссылок на очередь.
Если для отправки сообщения установлено время ожидания, отсчет времени ожидания начинается с момента отправки сообщения. Это означает, что пока сообщение находится на локальном компьютере, ожидая доступности очереди, время ожидания идет и может закончиться. При использовании времени ожидания следует или установить достаточно большой промежуток времени для доставки, или запросить уведомление о том, что сообщение не может быть доставлено, чтобы можно было узнать об окончании времени ожидания. Дополнительные сведения о запросе уведомления о том, что сообщение не может быть доставлено, см. в разделе Практическое руководство. Запрос подтверждения получения сообщения.
Отправка сообщения в отключенную очередь
Создайте экземпляр компонента MessageQueue. Дополнительные сведения см. в разделе Практическое руководство. Создание экземпляров компонента MessageQueue.
В качестве значения свойства Path компонента задайте имя формата очереди, в которую необходимо отправить сообщение.
Примечание. Если компонент создается в Обозревателе серверов, в данном свойстве будет автоматически указан путь, а не имя формата. Чтобы изменить путь на имя формата, щелкните значок развертывания свойства Path. В появившемся диалоговом окне найдите и выберите очередь, к которой обращается компонент, выберите Имя формата в поле Обращаться к очереди по и нажмите кнопку ОК.
Отправка сообщения обычным образом
Инструкции по отправке простых сообщений см. в разделе Практическое руководство. Отправка простых сообщений.
Инструкции по отправке сообщений с использованием объекта Message см. в разделе Практическое руководство. Отправка сложных сообщений.
См. также
Задачи
Практическое руководство. Запрос подтверждения получения сообщения
Практическое руководство. Отправка простых сообщений
Практическое руководство. Отправка сложных сообщений
Практическое руководство. Создание экземпляров компонента MessageQueue
Практическое руководство. Проверка сообщений во время разработки
Основные понятия
Свойства сообщения по умолчанию