Применимо к: Exchange Server 2010 SP1

Последнее изменение раздела: 2009-12-17

Агенты доставки отвечают за доставку сообщений, адресованных внешним системам, не использующим протокол SMTP. Каждый агент доставки работает с разъемом агента доставки. Когда сообщение направляется на соединитель агента доставки, соответствующий агент доставки выполняет преобразование содержимого и доставку сообщения. Агенты доставки являются существенным усовершенствованием во внешних соединителях по обработке сообщений, не имеющих отношения к протоколу SMTP, в организации Exchange.

Необходимы сведения о других задачах управления, связанных с управлением транспортными серверами? См. раздел Управление транспортными серверами.

Содержание

Агенты доставки

Добавление агентов доставки в организацию

События, используемые агентами доставки

Агенты доставки

Агент доставки — это настраиваемый агент, который может:

  • Устанавливать подключение к внешней системе для доставки сообщений.

  • Извлекать сообщения из очередей удаленной доставки на транспортных серверах-концентраторах.

  • Доставлять сообщения во внешнюю систему.

  • Обеспечивать подтверждение для каждой успешной доставки сообщения.

Хотя архитектура внешних соединителей в версии Microsoft Exchange Server 2010 продолжает присутствовать, мы рекомендуем всегда, когда это возможно, использовать агенты доставки для маршрутизации сообщений в системы без протокола SMTP. Использование агентов доставки обеспечивает следующие преимущества:

  • Они позволяют управлять очередями сообщений, которые маршрутизируются во внешние системы, с помощью известных инструментов управления очередями.

  • Поскольку сообщения больше не нуждаются в записи и чтении из файловой системы, производительность доставки сообщений повышается.

  • Они предоставляют разработчикам агента доступ к свойствам сообщений с интенсивными событиями.

  • Разработка агента доставки происходит быстрее, чем реализация внешнего соединителя, так как агент доставки может использовать представление сообщений и функции управления Exchange.

  • Теперь можно быть уверенным в том, что сообщения будут доставляться во внешние системы, в противоположность простой их записи в транзитный каталог.

  • Использование соединителей агента доставки позволяет анализировать соглашение об уровне обслуживания (SLA), так как теперь стало возможным отслеживать задержку при доставке сообщений во внешнюю систему.

В начало

Добавление агентов доставки в организацию

Чтобы использовать агент доставки в организации, необходимо выполнить указанные ниже действия:

  • Получите агент доставки. Как правило, агенты доставки создаются сторонними производителями. Система Exchange 2010 поставляется только с одним соединителем агента доставки по умолчанию: соединитель агента доставки обмена текстовыми сообщениями.

  • Установите агент доставки на транспортные серверы-концентраторы, которые выступают в качестве исходных серверов для соединителей агента доставки.

  • Создайте соединитель агента доставки для конкретного протокола.

После выполнения всех указанных действий сообщения во внешние системы будут маршрутизироваться через соединители агента доставки и обрабатываться этим агентом.

Соединители агента доставки

Не следует путать соединители агента доставки с самими агентами доставки. Соединители агента доставки настраиваются для принятия решений по маршрутизации. Соединители агента доставки управляют постановкой в очередь сообщений, подлежащих обработке агентами доставки; это аналогично использованию соединителей отправки или соединителей групп маршрутизации для доставки SMTP.

Соединители агента доставки обеспечивают вставку предназначенных для внешней системы сообщений в соответствующие очереди на транспортных серверах-концентраторах, используемых для доставки сообщений во внешние системы. После постановки сообщений в очередь диспетчер подключений запускает агент доставки для обработки текущей доставки сообщения во внешнюю систему.

В начало

События, используемые агентами доставки

Агенты доставки действуют на следующие события, вызываемые компонентом «Диспетчер подключений»:

  • OnOpenConnection   Это событие возникает, когда в очереди имеются сообщения на доставку во внешнюю систему. Оно указывает агенту доставки на необходимость произвести подключение к внешней системе.

  • OnDeliverMailItem   Это событие указывает агенту доставки на необходимость извлечь следующий элемент из очереди.

  • OnCloseConnection   Это событие возникает, когда в очереди больше нет сообщений на доставку во внешнюю систему. Оно указывает агенту доставки на необходимость закрыть подключение к внешней системе.

В типичном сценарии доставки между диспетчером подключений и агентом доставки происходит следующее взаимодействие:

  1. Диспетчер подключений определяет сообщения, поставленные в очередь для доставки во внешнюю систему.

  2. Диспетчер подключений запускает агент доставки с помощью события OnOpenConnection.

  3. Агента доставки устанавливает соединение с внешней системой. После установления соединения об этом уведомляется диспетчер подключений с помощью метода RegisterConnection.

  4. Диспетчер подключений вызывает событие OnDeliverMailItem.

  5. Агент доставки извлекает сообщение из очереди и доставляет его во внешнюю систему. По завершении доставки обеспечивается подтверждение для диспетчера подключений.

  6. Если в очереди еще остаются сообщения, шаги 4 и 5 повторяются до тех пор, пока не будут доставлены все сообщения.

  7. Диспетчер подключений вызывает событие OnCloseConnection.

  8. Агент доставки закрывает подключение к внешней системе и уведомляет об этом диспетчер подключений, используя метод UnRegisterConnection.

Ситуации повторения попыток

Ниже приводятся ситуации, где сообщения или вся очередь соединителя агента доставки завершаются в состоянии повтора попыток:

  • После того как диспетчер подключений вызывает событие OnOpenConnection, если агенты доставки не отвечают с помощью метода RegisterConnection, то вся очередь для этого соединителя агента доставки переводится в состояние повтора попытки.

  • Если агент доставки не обеспечивает подтверждения для определенного сообщения, то для этого сообщения выполняется повторная попытка.

В начало