Что такое SOAP и SOA?

SOAP - это сетевой протокол, основанный на обмене XML-данными по любому протоколу прикладного уровня, включая HTTP, FTP и почтовые протоколы. SOA - архитектура приложений, основанная на использовании сервисов со стандартизованными интерфейсами.

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

SOAP - это сетевой протокол, основанный на обмене XML-данными по любому протоколу прикладного уровня, включая HTTP, FTP и почтовые протоколы. Чаще всего, правда, используется в качестве основы протокол HTTP. Сама же аббревиатура SOAP расшифровывается как Simple Object Access Protocol (простой протокол доступа к объектам). SOAP удобен во многом благодаря своей стандартизированности, которая позволяет использовать его во многих сферах.

Изначально SOAP разрабатывался как RPC-протокол. RPC означает Remote Procedure Call, или, по-русски, удалённый вызов процедур - это технология, позволяющая компьютерным программам вызывать функции или процедуры на удалённых компьютерах. Из-за того, что процедуры на разных компьютерах выполняются в разных адресных пространствах, возникают сложности в передаче параметров и результатов, что усугубляется особенностями разных операционных систем и языков программирования, которые используются при создании распределённых систем. Именно поэтому возникла потребность в создании протокола коммуникации между разными частями распределённого приложения. Сейчас, правда, SOAP уже, так сказать, "вырос" и используется для обмена произвольными XML-данными.

SOAP удобен благодаря тому, что позволяет организовать простое взаимодействие между разными частями распределённых приложений, кроме того, этот протокол является сердцем SOA (Service-Oriented Architecture, сервисно-ориентированная архитектура) - архитектуры приложений, основанной на использовании сервисов со стандартизованными интерфейсами. SOA используется при разработке приложений корпоративного масштаба, то есть крупных распределённых систем, стоящих огромных денег.

Стоит отметить, что SOAP часто упрекают в том, что этот протокол благодаря своей архитектуре сравнительно медлителен, а потому там, где важна скорость и выгодно использовать XML, организуют пересылку XML-документов по HTTP, не используя SOAP. Кроме того, хотя SOAP и стандартизован, многие приложения генерируют данные в SOAP, не совместимые друг с другом.

Вадим СТАНКЕВИЧ,
[email protected]

Версия для печатиВерсия для печати

Номер: 

11 за 2008 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!

Комментарии

Аватар пользователя Tide
Было бы интереснее почитать именно про SOA