Определение Distributed Component Object Model (DCOM) — программная архитектура, разработанная компанией Microsoft для распределения приложений между несколькими компьютерами в сети. Программный компонент на одной из машин может использовать DCOM для передачи сообщения (его называют удаленным вызовом процедуры) к компоненту на другой машине. DCOM автоматически устанавливает соединение, передает сообщение и возвращает ответ удаленного компонента. |
Для того чтобы различные фрагменты сложного приложения могли работать вместе через Internet, необходимо обеспечить между ними надежные и защищенные соединения, а также создать специальную систему, которая направляет программный трафик. С начала 1990-х годов над решением этой задачи трудятся две конкурирующие группы разработчиков.
Одну из них — консорциум Object Management Group (OMG) — поддерживают компании IBM, Sun Microsystems и ряд других производителей. В 1991 году OMG предложил архитектуру распределенных вычислений, получившую название Common Object Request Broker Architecture (CORBA). Сегодня она применяется многими крупными организациями для развертывания распределенных вычислений в масштабах предприятия на базе Unix-серверов и мэйнфреймов.
Другое технологическое направление представляет Microsoft, создавшая распределенную компонентную объектную модель Distributed Component Object Model (DCOM), которая встраивается в операционные системы Windows NT 4.0 и Windows 98.
Преимуществом DCOM является, по мнению Карен Буше, аналитика The Standish Group, значительная простота использования. Если программисты пишут свои Windows-приложения с помощью ActiveX (предлагаемого Microsoft способа организации программных компонентов), то операционная система будет автоматически устанавливать необходимые соединения и перенаправлять трафик между компонентами, независимо от того, размещаются ли компоненты на той же машине или нет.
Способность DCOM связывать компоненты позволила Microsoft наделить Windows рядом важных дополнительных возможностей, в частности, реализовать сервер Microsoft Transaction Server, отвечающий за выполнения транзакций баз данных через Internet. Новая же версия COM+ еще больше упростит программирование распределенных приложений, в частности, благодаря таким компонентам, как базы данных, размещаемые в оперативной памяти.
Однако у DCOM есть и ряд недостатков. «На самом деле это решение до сих пор ориентировано исключительно на системы Microsoft», — считает Буше. Изначально DCOM создавалась под Windows. Хорошо известно, что Microsoft заключила соглашение с компанией Software AG, предмет которого — перенос DCOM на другие платформы. Впрочем, по мнению Буше, значение этой работы достаточно ограниченно, поскольку Microsoft уже успела внести ряд существенных изменений в Windows-версию DCOM.
В числе недостатков и то, что архитектура предусматривает использование для поиска компонентов в сети разработанной Microsoft сетевой службы каталогов Active Directory. Но эта служба каталогов появится только в версии Windows 2000. Пока же DCOM должна использовать локальные списки компонентов, что совершенно неприемлемо для приложений большего масштаба, нежели рабочая группа, поскольку информация об изменении местонахождения компонента должна вручную заноситься в каждый работающий в сети компьютер.
Тем не менее аналитики Forrester Research уверены, что после появления Windows 2000 70% крупных организаций в конечном счете предпочтут ее в качестве основной платформы для развертывания стратегических бизнес-приложений.
DCOM против CORBAИ DCOM компании Microsoft, и CORBA консорциума Object Management Group поддерживают распределенные вычисления. Однако, похоже, две эти технологии развиваются в разных направлениях.
|
ТерминологияКомпонент. Составная часть распределенного приложения.Active Directory. Сетевая служба каталогов Microsoft, которую корпорация предполагает включить в состав Windows 2000. ActiveX. Предлагаемый Microsoft способ разработки программных компонентов. Common Object Model (COM). Программная архитектура Microsoft, поддерживающая компонентный подход к разработке приложений. COM+. Модернизация COM и Microsoft Transaction Server, который упрощает разработку сложных распределенных приложений. Common Object Request Broker Architecture (CORBA). Основной конкурент DCOM в области построения распределенных программных систем. Распределенные вычисления. Парадигма организации приложений, в которой различные части программы могут исполняться на разных компьютерах в сети. Microsoft Transaction Server (MTS). Усовершенствование в составе COM, которое реализует поддержку транзакций баз данных. Remote Procedure Call (RPC). Удаленный вызов процедуры — сообщение, посылаемое по сети, которое позволяет программе, установленной на одном компьютере, инициировать выполнение необходимой операции на другом. |