Функционирование scm
Время жизни объектов
В COM/DCOM объекты уничтожаются, когда на них не остается ссылок у клиентов. Подсчет ссылок производится посредством вызова методов addRef() и Release() интерфейса IUnknown. Следствием этого является невозможность хранения уникального идентификатора объекта. Потому обращение к объектам производится посредством ссылки на интерфейс.
Сравнение dcom и corba (ч.1)
CORBA
+ кросплатформенность
+ бОльшая гибкость при создании и управлении объектами
+ лучшая масштабируемость
+ простота настройки для работы в сети Интернет
COM/DCOM
+ не требуется дополнительное ПО для ОС Windows
+ возможность взаимодействия с множеством реализованных приложений (например MS Office)
DCOM |
CORBA |
Поддержка множественных интерфейсов для объектов |
Поддержка множественного наследования на уровне интерфейсов |
Каждый объект реализует IUnknown |
Каждый интерфейс наследуется от CORBA.Object |
Идентифицирует объект на сервере посредством указателя на интерфейс, который используется как дескриптор объекта на время выполнения |
Идентифицирует объект посредством объектных ссылок. Объектные ссылки могут быть сохранены в строку, которая может быть преобразована в объектную ссылку |
DCOM |
CORBA |
Идентифицирует интерфейс с помощью IID |
Идентифицирует интерфейс с помощью имени интерфейса |
Использует протокол Object Remote Procedure Call (ORPC) для удаленных вызовов |
Использует протокол Internet Inter-ORB Protocol(IIOP) |
Маппинг имени объекта и его реализации описывается в реестре |
Маппинг имени объекта и его реализации описывается в репозитории реализаций |
DCOM |
CORBA |
Информация о типах для различных методов содержится в библиотеке типов (type library) |
Информация о типах для различных методов содержится в репозитории интерфейсов |
Поиском реализации объекта занимается Service Control Manager (SCM) |
Поиском реализации объекта занимается Object Request Broker (ORB) |
За активацию реализации объектов отвечает Service Control Manager (SCM) |
За активацию реализации объектов отвечает объектный адаптер |
DCOM |
CORBA |
Все параметры передаваемые между клиентом и серверным объектом задаются в определении интерфейса. В зависимости от определения могут передаваться по ссылке или по значению |
При передаче параметров между клиентом и удаленным объектом все интерфейсные типы передаются по ссылке, все остальные объекты – по значению (включая сложные типы данных) |
Каждый вызов возвращает структуру типа HRESULT, в которой содержится возвращаемый статус для более полной обработки искл. ситуаций используются объекты Error. При этом сервер должен реализовать интерфейс ISupportErrorInfo |
Обработка искл. ситуаций производится с помощью объектов Exception. Когда удаленный объект создает объект Exception, ORB прозрачно доставляет его клиенту. |
Web Services
Веб-сервис - программная система, идентифицируемая строкой URI, чьи публичные интерфейсы и привязки определены и описаны языком XML. Описание этой программной системы может быть найдено другими программными системами, которые могут взаимодействовать с ней согласно этому описанию посредством сообщений, основанный на XML, и передаваемых с помощью Интернет-протоколов.
Используемые стандарты
XML – расширяемый язык разметки, предназначенный для хранения и передачи структурированных данных;
SOAP – протокол обмена сообщениями на базе XML
Преимущества
Обеспечивают взаимодействие программных систем независимо от платформы.
Основаны на базе открытых стандартов и протоколов.
Благодаря использованию XML Достигается простота разработки и отладки
Использование интернет-протокола HTTP обеспечивает взаимодействие программных систем через межсетевой экран.
Недостатки
Более низка производительность по сравнению с технологиями CORBA, DCOM за счет использования текстовых XML сообщений.
SOAP
Simple Object Access Protocol – протокол обмена структурированными сообщениями в распределенной вычислительной среде. Используется для обмена в разных сетевых протоколах.
Web Services
Веб-сервис - программная система, идентифицируемая строкой URI, чьи публичные интерфейсы и привязки определены и описаны языком XML. Описание этой программной системы может быть найдено другими программными системами, которые могут взаимодействовать с ней согласно этому описанию посредством сообщений, основанный на XML, и передаваемых с помощью Интернет-протоколов.
Используемые стандарты
XML – расширяемый язык разметки, предназначенный для хранения и передачи структурированных данных;
SOAP – протокол обмена сообщениями на базе XML
Преимущества
Обеспечивают взаимодействие программных систем независимо от платформы.
Основаны на базе открытых стандартов и протоколов.
Благодаря использованию XML Достигается простота разработки и отладки
Использование интернет-протокола HTTP обеспечивает взаимодействие программных систем через межсетевой экран.
Недостатки
Более низка производительность по сравнению с технологиями CORBA, DCOM за счет использования текстовых XML сообщений.
SOAP
Simple Object Access Protocol – протокол обмена структурированными сообщениями в распределенной вычислительной среде. Используется для обмена в разных сетевых протоколах.
