Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основные технологии доступа к данным.doc
Скачиваний:
5
Добавлен:
24.04.2019
Размер:
61.44 Кб
Скачать

Составные части технологии com

  1. Сервер COM – это законченный модуль кода .exe и .dll, где хранится код одного или нескольких компонентов COM.

  2. Клиент COM – это программный код, в котором происходит обращение к интерфейсу COM с запросом на выполнение услуг серверов COM. Клиент знает, что надо получить от сервера, но не знает, как это будет реализовано и где сервер находится физически.

  3. Интерфейс COM описывает методы и свойства, доступные программам, обращающимся к COM-объекту.

Объект COM может иметь один или несколько интерфейсов COM и содержит их описание и реализацию. Интерфейс COM позволяет клиентам COM общаться с COM-сервером на основе стандартного механизма публикаций интерфейса, т.е. стандартной регистрации в ОС, после которой изменения интерфейса недопустимы. Это гарантирует одинаковую работу COM-объекта в любых условиях.

У каждого объекта есть свой интерфейс, он называется IUnknown. Он позволяет узнать о наличии других интерфейсов, наследующих его характеристики. Любой COM-объект имеет GUID (глобальный идентификатор интерфейса) длиной 16 байт (он уникален и помогает избежать проблем при совпадении одинаковых имен), а также другие идентификаторы – на основе глобального IID.

GUID помогает избежать проблем при совпадении имен различных объектов.

COM-объект может быть реализован на любом языке программирования.

Сервер COM при обращении получает идентификатор класса, представляющий собой глобальный идентификатор интерфейса, который ссылается на подходящий COM-объект. Сервер COM создает специальный объект – "фабрику классов", – который занимается непосредственно производством экземпляра нужного объекта (создание и загрузка), а также экземпляра специального класса с именем Coclass, который обеспечивает возможность обращения к объекту COM.

Название объекта Coclass то же, что и объекта COM, только вместо первой буквы пишется Co.

Создание распределенных приложений на базе dCom

Для реализации технологий DCom может быть использован сервер транзакции MTS(MS Transaction Server). При организации распределенных вычислений понятие транзакции шире:

транзакция – это не просто логически законченная операция над набором данных, а логически законченный блок произвольных программных действий, в том числе и при обращении к БД.

Любой Com-объект регистрируется в MTS, а клиентская программа обращается к его интерфейсу в сервере.

Сервер транзакций MTS не является самостоятельным приложением, а входит в поставку Web-сервера (Personal Web Server) и организует совместную работу серверов Com и клиентов Com, выполняющихся, возможно, на разных компьютерах. Он организует гарантированную обработку транзакций, оптимальное распределение ресурсов и автоматическое управление серверными компонентами Com.

Технология midas

Обеспечивает реализацию модели многоуровневых систем (чаще используют трехуровневую модель). Отдельные компоненты "клиент-серверного" приложения выполняются на разных компьютерах:

  1. Клиентская программа реализует пользовательский интерфейс и посылает запросы на выполнение нужных действий.

  2. Сервер приложений синхронизирует работу всех компонентов системы и организует связь между ними.

  3. Удаленный сервер баз данных – это СУБД, выполняющаяся на выделенном компьютере, обрабатывающая запросы от сервера приложений и по этим запросам возвращающая наборы данных или вносящая изменения в таблицу.

Состав приложения MIDAS

  1. Удаленные модули данных – это серверы COM и CORBA.

  2. Поставщики информации – это специальные объекты, возвращающие по запросу нужную информацию.

  3. Компоненты связи – это службы, обеспечивающие связь между всеми составляющими системы MIDAS.

  4. Клиентские наборы данных - это специальные объекты клиентской программы, использующие библиотеку MIDAS.dell для обработки получаемых данных.

Механизм работы приложения MIDAS

  1. Клиентская программа соединяется с сервером приложений. Если он не запущен, то запускается автоматически.

  2. Клиентская программа запрашивает данные у сервера приложений.

  3. Сервер приложений обращается к СУБД за получением набора данных, запаковывает его и отсылает клиентской программе.

  4. Клиентская программа распаковывает посылку, преобразует ее в локальный набор данных и отображает в соответствующих компонентах (TDBgrid).

  5. Пользователь вносит изменения в локальный набор данных: удаляет, изменяет и добавляет записи.

  6. Клиентская программа реагирует на действия пользователя и посылает запакованный протокол изменений серверу приложений.

  7. Сервер приложений распаковывает посылки и формирует транзакцию к серверу баз данных, который в случае ошибок формирует набор ошибочных записей.

  8. Набор посылается обратно в клиентскую программу.

  9. Клиентская программа пытается решить проблему с ошибочными записями, взаимодействуя с пользователем.

  10. Клиентский набор данных обновляется.