Основные концепции CORBA, обсуждавшиеся до сих пор, должны быть близки тем разработчикам, кто хорошо знаком с CORBA фабрики и посредники могут быть обнаружены повсюду. Те классы и объекты, которые применяют
) - основной компонент CORBA. Все CORBA -совместимые объекты должны иметь CORBA -совместимой распределенной системе.
(рис 7.1) Путь вызова от клиента к удаленному объекту можно рассматривать как коммутационную плату (или коммуникационную шину) распределенных систем. Что касается коммуникационной шины, то суть здесь заключается в том, что все объекты, использующие дает ответ в (архитектуре управления объектами).
Типичная программная система призвана удовлетворять различные потребности. Унаследованные системы (то есть любые системы, разработанные и установленные ранее) обычно являются изолированными, сосредоточенными, и не предназначены для совместного использования информационных ресурсов. Они решают узкую задачу, даже если решение требует больших объемов данных. Со временем, по мере модификации систем, их модернизация обходится все дороже. За последние 30-40 лет эти системы стали практически несовместимы. Развитие аппаратных и программных средств,
изменение способов ведения бизнеса приводили к появлению множества несовместимых систем, пока системные , вместе с компаниями-производителями, являющимися членами , разработал (рис. 7.2).
(рис 7.2) Эталонная модель архитектуры управления объектами (Object Management Architecture) ( ) - это эталонная определяет к использованию определяет абстракцию, которая скрывает тот факт, что различные системы применяют разные языки программирования или несовместимые версии одного и того же языка.
CORBA определяет правила функционирования брокера объектных запросов в условиях использования разных языков программирования. определяет полиморфное API ), но может быть разнородным внутри.
в виде процесса-демона. Это деталь реализации, решение о которой принимают администраторы систем. С позиции
основную роль. Теперь мы рассмотрим, как клиент и сервант воспринимают IDL -компилятором), динамического интерфейса (применяя API динамических вызовов CORBA ) или API брокера объектных запросов. Концептуально
Наиболее прямолинейным способом взаимодействия с брокером объектных запросов является использование статических заглушек и скелетов. Они содержат код, необходимый для связи, и предоставляют возможность IDL -описания. Динамические вызовы (и со стороны клиента, и со стороны серванта) требуют больших издержек, но являются более гибкими, так как позволяют разработчикам программно управлять вызовами удаленных объектов.
Та опосредованность, которая придает CORBA ее силу, в случае прямых вызовов брокера объектных запросов теряется, и восстановить ее в процессе реализации системы бывает трудно. Клиент и сервант взаимодействуют с брокером объектных запросов, чтобы получить доступ к определенного вида операциям, осуществить которые можно только через CORBA требуются только при реализации средств поддержки инфраструктуры, таких как драйверы и мосты. Рис. 7.3 иллюстрирует взаимодействие с объектным брокером.
(рис 7.3) Структура интерфейса запросов ORBКонцепции CORBA, рассматривавшиеся ранее, касались объектных адаптеров - объектов, которые располагаются между клиентом и сервером, чтобы управлять доступом к распределенному объекту. Объектный адаптер действует как "соединитель" между клиентом и кодом серванта, который выполняется при вызове операции (CORBA 3.0 стандартным объектным адаптером был Basic Object Adapter (базовый объектный адаптер), или . упрощал соединение клиента и сервера. В CORBA 3.0 был определен другой объектный адаптер, названный Portable Object Adapter ( POA - переносимый объектный адаптер). POA заменил как более предпочтительный. не соответствовал требованиям, которые предъявляют Internet -приложения. В то время, когда впервые специфицировал , то, что сейчас рассматривается как стандартная функциональность (т.е. возможность использования средств CORBA разных производителей), тогда не воспринималось как первоочередная задача.
Так же как Java вытесняет различные технологии, спецификация CORBA заменила на POA.
POA служит многим целям, включая возможность отделить доступ к серванту от самого серванта. Потребность клиента в обслуживании означает, что ему нужны конкретные услуги в конкретное время. Для удовлетворения этой потребности несколько компонентов осуществляют совместные действия. Во-первых, у клиента есть объектная ссылка, представленная CORBA -объектом. В объектной ссылке CORBA -объект содержит информацию о местонахождении создавшего данный объект объектного адаптера. Объектный адаптер анализирует клиентский вызов,
принимая решение, какой объект (или сервант) может обработать данный вызов, и соответствующим образом завершает вызов (основываясь на различных опциях конфигурации, задаваемых при создании объектного адаптера). Если клиент удерживает полученную им при первом подключении к серванту объектную ссылку в течение длительного периода времени и не нуждается в обращениях к этому серванту,
то такое ожидание никак не скажется на самом серванте. Пострадает масштабируемость, превращая CORBA в неэффективное с точки зрения системной интеграции решение. Благодаря отделению серванта от клинических обращений к сервису различные обслуживающие объекты (контролируемые с помощью времени жизни объектов и POA, означает прозрачное решение этих вопросов.
CORBA не ограничивается использованием в приложениях с заранее известными межмодульными интерфейсами.
Статические заглушки, использующие Static ( SII ), имеют жестко запрограммированные Dynamic ( DII ), осуществляют проверку типов во время выполнения.
Сервисы CORBA ( CORBAservices ) - это базовые сервисы, которые доступны всем объектам, подключенным к коммуникационной шине данного брокера объектных запросов. Так как CORBA -системы, сервисы CORBA могут требовать для правильного функционирования его наличия. Всего имеется шестнадцать сервисов:
Naming Service );Event Management Service );Life Cycle Service );Persistent State Service );Transaction Service );Concurrency Service );Relationship Service );Externalization Service );Query Service );Licensing Service );Property Service );Time Service );Security Service );Notification Service );Trader Service );Collections Service ).Эти сервисы являются основными. Все сервисы CORBA имеют стандартные IDL -интерфейсы, которые описывают предлагаемые этими сервисами услуги. Назначение стандартных интерфейсов точно соответствует еще одной цели : подключаемые сервисы должны иметь стандартные механизмы подключения.
Распределенные объекты должны быть определены таким образом, чтобы их могли обнаружить и применить другие распределенные объекты. Мы описываем распределенные объекты на IDL и используем заглушки и скелеты, созданные IDL -компилятором, чтобы обеспечить средства для удаленных вызовов.
Производители IDL -компиляторы. Что касается Java 1.2, то приспособила библиотеки для Java, поставляя их вместе с . Доступность библиотек CORBA позволяет разработчикам Java-CORBA -продуктов создавать собственные заглушки и скелеты, задействуя поставляемый с Java IDL -компилятор idlj.
Теоретически, заглушки для Java, создаваемые компилятором, должны взаимодействовать с кодом скелетов, работающим с Java -скелетов), но следует это проверять и отдавать себе отчет в том, что возможна несовместимость.
Документ определяет IDL-Java -отображение, охватывая все вопросы: от имен пакетов до классов Helper для отображения псевдообъектов CORBA. Синтаксис IDL похож на синтаксис С++.В таблице 7.1 перечислены наиболее часто используемые отображения спецификации.
IDL |
Java |
module |
package |
interface |
interface |
struct |
class |
const |
public static final |
boolean |
boolean |
char |
char |
wchar |
wchar |
|
|
string |
java.lang.String |
wstring |
java.lang.String |
short |
short |
unsigned short |
short |
long |
int |
unsigned long |
int |
long long |
long |
unsigned long long |
long |
float |
float |
double |
double |
fixed (не поддерживается в idlj ) |
java.math.BigDecimal |
sequence |
[] (массив) |
[] (массив) |
[] (массив) |
Пакеты, начинающиеся с org., содержат пакеты Java, составляющие ядро инфраструктуры CORBA. Производители средств CORBA поставляют собственные версии библиотек CORBA со своими Java -
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.