Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РСБДтЗ / Курс лекций РСБДиЗ.doc
Скачиваний:
135
Добавлен:
05.03.2016
Размер:
1.63 Mб
Скачать

Понятие о технологии corba

CORBA (Common Object Request Broker Architecture) - общая архитектура объектных брокеров (общая архитектура посредников передачи запросов объектам). Термином CORBA обозначают технологию, архитектуру и набор спецификаций и стандартов промежуточного программного обеспечения (middlewareобъектного типа для создания распределенных программных приложенийАвтором архитектуры CORBA является консорциум Object Management Group.

CORBA состоит из 4 основных частей.

  • Object Request Broker - брокер (посредник) объектных запросов, является ядром архитектуры CORBA. Это объектная шина, по которой происходит взаимодействие локальных и удаленных объектов. Помимо самого вызова метода удаленного объекта, ORB отвечает за поиск реализации объекта, его подготовку к получению и обработке запроса, передачу запроса и доставку результатов клиенту.

  • Object Services - объектные сервисы, реализации объектов, предоставляющие общие для объектно-ориентированной среды возможности: служба имен, служба событий, служба сохранения в долговременной памяти, служба транзакций и так далее.

  • Common Facilities - общие средства, это реализации объектов, необходимые для большого числа приложений, например, поддержка составных документов, потоков заданий и так далее.

  • Application и Domain Interfaces - прикладные и отраслевые интерфейсы. Прикладные объекты представляют собой реализации объектов для конкретных пользовательских приложений. В CORBA есть также понятие домена. Реализации объектов домена (CORBA domains) предназначены для приложений с вертикальной организацией.

В CORBA интерфейс объекта задается с помощью языка описания интерфейсов (Interface Definition LanguageIDL).Тип объекта - это тип его интерфейса. Интерфейс идентифицируется именем, представленным цепочкой символов. В модели CORBA определен базовый тип для всех объектов - CORBA::Object. Объект поддерживает тип своего непосредственного интерфейса и по принципу наследования все его базовые типы.

CORBA IDL задает определения, которые могут отображаться в множество различных языков, не требуя при этом никаких изменений от целевого языка. Эти отображения реализуются компилятором IDL.

CORBA вводит понятие объектной ссылки ( object reference ), которая уникальным образом идентифицируетобъект в сети.

Механизм долговременного хранения, то есть сохранения состояния объекта в долговременной памяти для дальнейшей его реактивации, в CORBA абсолютно прозрачен для клиента.

Наиболее распространенные службы CORBA - службы именования, управления жизненным циклом и событиями.

CORBA поддерживает интерфейс динамического вызова DII (Dynamic Invocation Interface).

В CORBA изначально была заложена многоплатформенность и поддержка множества популярных языковпрограммирования без необходимости каких-либо изменений в них.

Объектная архитектура распределенных систем. Понятие о технологии ejb

Свойства архитекутуры Enterprise JavaBeans.

  • Является стандартной компонентной архитектурой для построения распределённых объектно-ориентированных бизнес-приложений на языкеJava.

  • Построение распределённых приложений путём комбинированиякомпонентов, разработанных для различных платформ и операционных систем.

  • Скрытие деталей реализации: разработчикам нет необходимости знать и понимать нижние уровни системы.

  • Отражает все аспекты жизненного цикла программного обеспечения.

  • Совместима с CORBA-протоколами

Компоненты EJB (The Enterprise JavaBeans component) выполняются внутриEJB-контейнера (The Enterprise JavaBeans container), который, в свою очередь, выполняется внутри EJB-сервера. Любой сервер, который в состоянии поддерживать EJB-контейнеры и предоставлять им необходимые сервисы, может быть EJB-сервером.EJB-компонент представляет из себя Java-класс, который реализует некую бизнес-логику. Все остальные классы вEJB-системе либо реализуют поддержку клиент / сервер взаимодействий между компонентами, либо реализуют некие сервисы для компонентов.

Компонент EJB определяется как комбинация трёх составных элементов и описания его установки и применения:

  • home -интерфейс, home -объект,

  • remote -интерфейс, объект EJB - реализация remote -интерфейса (EJBObject),

  • Непосредственно реализация Enterprise Bean - это код реализации бизнес-логики.

  • Описание установки EJB и его применения.

EJB-контейнер реализует для находящихся в нем компонентов такие сервисы, как транзакции (transaction),управление ресурсами, управление версиями компонентов, их мобильностью, настраиваемостью, мобильностью, жизненным циклом. Разработчик EJB-компонента может просто вызывать соответствующие методы у контейнера.

Клиентские приложения вызывают методы на удаленных EJB-компонентах через EJB-объект (EJB-object). EJB-объект реализует "удаленный интерфейс" (remote interfaceEJB-компонента на сервере. EJB-объект реализует лишь бизнес-интерфейс для EJB-компонента, являясь, в некотором смысле, "промежуточным" звеном между клиентом и EJB-компонентом.

EJB-объекты и EJB-компоненты представляют собой разные классы. Хотя они реализуют один и тот же интерфейс (интерфейс, описанный для EJB-компонента), но при этом они выполняют совершенно разные функции. EJB-компонент выполняется на сервере, внутри EJB-контейнера и реализует бизнес-логику, в то время как EJB-объект выполняется у клиента и удаленно вызывает методы у EJB-компонента.

Соседние файлы в папке РСБДтЗ