Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Существует множество способов обработки отправки полученных сообщений SOAP в соответствующую службу. Двумя самыми простыми механизмами являются диспетчеризация на транспортном уровне, а также адресная и акционная диспетчеризация.
Диспетчеризация транспортного уровня
При отправке уровня транспорта базовый HTTP-сервер (например, API HTTP) используется для управления маршрутизацией запросов на устройство и его службы. Сервер предоставляет разные URL-адреса для каждой службы и для устройства, а для каждого URL-адреса регистрируются различные приемники. Это позволяет разрабатывать код таким образом, чтобы каждая служба изолирована от другой, выполняя как отдельные компоненты в рамках одного процесса или выполняя как отдельные процессы.
Диспетчеризация на транспортном уровне обладает рядом преимуществ. Сообщения можно отправлять в соответствующий компонент, не анализируя конверт SOAP или текст сообщения. Кроме того, существующий механизм маршрутизации сообщений, предоставляемых большинством реализаций HTTP-сервера, можно повторно использовать, что означает, что пользовательский код диспетчеризации не требуется. Он также изолирует код обработки SOAP между службами, который обеспечивает уровень безопасности, так как безопасные службы не передают сообщения через общий код.
Обработка адресов и выполнение действий
Отправка адресов и действий зависит от заголовков SOAP, чтобы определить соответствующую службу, в которую отправляется сообщение. Эта модель также может использовать дополнительную информацию, такую как эталонные параметры, чтобы лучше помочь в процессе распределения.
Эта модель поощряет повторное использование кода в многоуровневом стеке обмена сообщениями, так как весь код до обработчика SOAP используется всеми службами. Кроме того, отдельные адреса транспорта для служб не требуются, что означает, что адреса UUID можно использовать для конечных точек службы. Диспетчеризация адресов и действий также напрямую преобразуется в модель программирования. Разработчики могут подключать службы и устройства к одному компоненту, который управляет маршрутизацией, а не иметь привязку к уровню HTTP или создавать отдельные компоненты для каждой службы.