Технология CORBA и особенности проектирования баз данных
Краткое сожержание материала:
Размещено на
Российский Государственный Социальный Университет
Кафедра моделирования информационных систем и сетей
Реферат
по дисциплине базы данных
на тему:
«Технология CORBA и особенности проектирования баз данных»
Выполнила
студентка гр.АСУ-Д-4
Фудина М.С.
Проверил доцент
Агальцов В.П.
Москва 2011
Введение
cobra проектирование база данные
[1]CORBA(Common Object Request Broker Architecture)- Общая Архитектура Брокера Объектных запросов
Это стандарт, набор спецификаций, для промежуточного программного обеспечения объектного типа, возникающий в результате самого широкого обсуждения накопившихся реальных проблем, в котором участвуют и разработчики и потребители технологий. В результате такого обсуждения создается документ, предлагающий решение рассматриваемых вопросов на уровне существующих технологий и технологий ближайшей перспективы. Достоинством опережающей разработки спецификации по сравнению с реализацией является возможность для независимых разработчиков создавать потенциально совместимые продукты, не ограничивая свободы выбора языков, ОС, аппаратных платформ, и не диктуя выбора конкретного технологического решения.
CORBA является концепцией, а не ее реализацией. Когда мы говорим "COM", то понимаем под этим скорее набор конкретных средств - элементов операционной системы, библиотек, утилит и т.п., которые являются составной частью того, что называется Microsoft Windows. Под термином "CORBA" понимается именно сложная и развитая концепция, которая сформулированна на уровне специального языка описаний - IDL. Реализации же этой концепции могут сильно отличаться друг от друга по различным критериям, наиболее важным в том или другом случае. VisiBroker и Application Server, BEA WebLogic, Iona Orbix, Oracle Application Server и "картриджи" Oracle, IBM BOSS - все эти продукты используют те или иные возможности CORBA.
Под "стандартом" применительно к CORBA понимается то, что официально утверждено консорциумом OMG. Надо сказать, что это очень высокий уровень "легитимности", так как авторитет OMG в компьютерном мире чрезвычайно высок. OMG представляет собой некоммерческую организацию, являющуюся содружеством разработчиков программного обеспечения и его потребителей, объединивших свои усилия для создания спецификаций этой технологии. В настоящий момент в OMG состоит более 800 членов, включая всех сколько-нибудь серьезных производителей программного обеспечения (и даже c недавнего времени Microsoft). Первая спецификация CORBA появилась в 1991 г. Новые возможности официально считаются добавленными в CORBA в момент утверждения соответствующей спецификации. Как правило, в разработке спецификации участвуют крупнейшие специалисты в данной области. Разработка реализации - задача конкретной фирмы. Обычно от утверждения спецификации до появления высококачественной реализации проходит довольно много времени - иногда несколько лет. В настоящий момент стандартизовано отображение языка IDL на 6 языков программирования - Ada, C, C++, Cobol, Java и Smalltalk. Существуют также отображения на Pascal (точнее, Delphi), Perl, Python и еще несколько языков, но они не стандартизованы.
Объекты CORBA можно рассматривать как экземпляры (instances) некоторого метатипа, причем и метатип, и сами объекты существуют вне связи с конкретной программой на конкретном языке. Этот метатип в CORBA называется «интерфейсом».
Технология CORBA
Спецификация CORBA (Common Object Request Broker Architecture) разработана группой компаний Object Management Group и описывает основанный на объектах способ создания распределенных приложений, то есть как осуществляется взаимодействие объектов клиента и сервера. После инсталляции специального программного обеспечения сервер приложений и клиенты могут взаимодействовать, используя объекты и интерфейсы CORBA.
Программное ядро CORBA разработано для всех основных аппаратных и программных платформ. Объекты приложений CORBA, используя в качестве посредника ПО CORBA, взаимодействуют с другими объектами CORBA, используя для этого интерфейсы. Для поиска и организации взаимодействия объектов CORBA предназначено специальное ПО -- объектный брокер запросов и сетевой агент Smart Agent. В результате клиентские и серверные приложения CORBA, работающие на платформе Wintel, одинаково легко взаимодействуют с аналогичными приложениями CORBA, откомпилированными для операционных систем UNIX или AS400.
Таким образом, использование архитектуры CORBA позволяет разработчикам многоуровневых приложений в Delphi создавать действительно гетерогенные системы, используя преимущества каждой платформы.
Основу архитектуры CORBA составляет объектный брокер запросов VisiBroker for C++ ORB V 3.3.2, который управляет взаимодействием клиентов и серверов в распределенной сетевой среде. Взаимодействие со средой и приложениями Delphi обеспечивает дополнительная библиотека orbpas50.dll.
Кроме ORB, набор программных средств, обеспечивающих работоспособность приложений CORBA, которые разрабатываются в Delphi, включает:
Basic Object Adaptor (BOA) -- служба, обеспечивающая регистрацию приложения-сервера в распределенной сетевой среде.
Smart Agent -- распределенная служба, обеспечивающая предоставление информации о запущенных в сетевой среде серверах CORBA.
Object Activation Daemon (OAD) -- специальное ПО, обеспечивающее автоматический запуск сервера CORBA (если он еще не запущен) при обращении к нему клиента CORBA.
Интерфейс
[2]Интерфейс в CORBA - это логически сгруппированный набор методов и атрибутов. Каждому интерфейсу присваивается имя, уникальное в пределах одной распределенной системы. В отличие от СОМ в CORBA нет бинарного стандарта интерфейсов. Вместо этого существует стандартный язык описаний IDL. Так уж получилось, что языки с названием IDL существуют в трех различных технологиях - OSF/DCE, Microsoft/COM и OMG/CORBA. Эти языки во многом похожи, поскольку предназначены для одного и того же, но OMG/IDL несколько отличается от своих «однофамильцев».
За его основу был взят язык C++, поэтому нам студентам, знакомым с C++, при работе с IDL будет достаточно удобно пользоваться данной технологией.
Сервант
Чтобы использовать CORBA-объект в конкретной программе недостаточно создать его или даже установить с ним связь. Функциональность CORBA-объекта недоступна для клиента до тех пор, пока в программе не создан объект, который позволяет получить доступ к методам, объявленным в IDL-интерфейсе. Этот объект (реализованный на C++, Java, C, Cobol, Ada, Smalltalk или некоторых других языках) и называется «сервантом».
В зависимости от используемого языка программирования, серванты реализуются по-разному. Для объектно-ориентированных языков сервант является экземпляром (instance) некоторого класса, методы которого реализуют нужную функциональность. Такой класс часто называют «классом реализации».
За время существования CORBA-объекта с ним может быть сопоставлено множество различных реализаций сервантов (но не более одного за раз). Более того, они могут содержаться в адресном пространстве различных приложений. Эти приложения могут быть даже запущены на различных компьютерах.
Можно сказать, что сервант является «инкарнацией» CORBA-объекта. Связь между сервантами и CORBA-объектами является хотя и строго формализованной, но очень гибкой. Сервант может быть создан раньше или позже CORBA-объекта; один сервант может «обслуживать» как один, так и несколько CORBA-объектов. Явное разделение циклов жизни CORBA-объектов и их сервантов (а именно серванты потребляют реальные ресурсы) - один из столпов, на которых базируется очень высокая масштабируемость CORBA-приложений.
Объектная ссылка
Единственная сложность, возникшая у меня с пониманием смысла термина «объектная ссылка», это то, что он используется в двух различных смыслах.
В понимании относительно данной технологии, объектная ссылка представляет собой закодированную информацию о CORBA-объекте. Она включает имя хоста, порта TCP/IP, так же уникальный идентификатор данного CORBA-объекта и множество другой информации, позволяющей клиенту установить связь с серверным объектом через границы языков программирования, операционных систем и аппаратных платформ. Операции с объектной ссылкой невозможны для клиента, за исключением того, что клиент может превратить ее в строку и записать в файл или базу данных. Впоследствии кто угодно может считать такую строку и преобразовать ее опять в объектную ссылку.
Во втором случае объектная ссылка - это переменная того или иного языка программирования, благодаря которой клиент осуществляет вызов удаленных методов.
Концептуально переменная типа «объектная ссылка» является указателем на так называемый «proxy-объект», который существует на стороне клиента и обеспечивает выполнение удаленных вызовов. Сам proxy-объект сделан недоступным для программиста; связано это с тем, что его создание - задача не клиентского приложения, а самого ORB'а. Логически с каждым proxy-объектом сопоставлена отдельная объектная ссылка, и под копированием объектной ссылки следует понимать создание как нового proxy-объекта, так и настроенного на него нового «указателя»....
Технология CORBA
Создание клиент-серверного приложения на основе технологии CORBA. Проектирование многоуровневой системы, в которой клиент при помощи банкомата выполня...
Использование информационных технологий COM, DCOM, CORBA в качестве средств повышения эффективности управления предприятием
Технология распределенных вычислений CORBA, взаимодействие компонентов и архитектура. Основное назначение CORBA и COM. Поддержка операционных систем,...
Проектирование педагогического процесса как технология
Сущность педагогической технологии и педагогического проектирования. Категории "технология", "педагогическая технология", "технология обучения". Техно...
Основные технологии построения распределенных информационных систем
Сущность, развитие и применение СОМ-технологий, их достоинства, недостатки, терминология. Особенности СОМ-интерфейса, сервера, клиента, расширений. Ло...
Информационная система туристического клуба
Теоретические аспекты проектирования баз данных. Определение предметной области информационной системы, этапы ее проектирования. Особенности инфологич...