g

CORBA: ORB: Состояние Союза

Здесь мы рассмотрим нынешнее состояние CORBA. В конце концов, вы покупаете продукт, а не стандарт. CORBA хороша ровно настолько, насколько хороша ее реализация. Далее, мы расскажем вам о том, что на сегодня в CORBA обстоит хорошо, что плохо, что вызывает тревогу. Эти выводы базируются на опыте совместного использования CORBA и Java. Мы завершим попыткой ответить на два ключевых вопроса: Можно использовать CORBA и Java сегодня для создания нового поколения клиент-серверных систем на базе Web? На самом ли деле эта технология созрела для выхода на ведущие позиции для создания наиболее важных приложений?

CORBA ORB; ХОРОШО. ПЛОХО. ТРЕВОЖНО

В этом разделе мы выскажем наше мнение, опираясь на опыт создания 3-хзвенных систем с использованием CORBA и Java. В сущности весь этот раздел представляет собой «уголок оратора».

CORBA ORB: Что Хорошо

Мы не хотели бы превращать этот раздел в панегирик на тему того, как прекрасна CORBA. Вместо этого, мы просто приведем десять наиболее важных достоинств, исходя из собственного опыта написания программ. Вот эти достоинства, без соблюдения какой-либо определенной градации:

CORBA ORB: Что Плохо

В наш список полезных, но отсутствующих возможностей можно было бы поместить и другие существенные вещи. К примеру, мы хотели бы иметь расширения CORBA IDL на семантическом уровне. Для этого компоненты нуждаются в антологиях для построения вами собственных словарей. Хорошим примером такой технологии является Project X фирмы Apple.

CORBA ORB: Что Вызывает Беспокойство

После пяти лет «созревания» большинство вопросов, вызывающие беспокойство, были сняты. Осталось не так уж много проблем в ORB. В тяжелые старые времена, для того, чтобы нарушить нормальное функционирование ORB, достаточно было допустить «утечку» памяти где-то в сети. Сейчас «повалить» ORB намного сложнее, особенно при работе с Java. Что вызывает наибольшую тревогу при изучении ORB? Это серверная платформа, которая требует от пользователя реализации слишком многих элементов инфраструктуры. Это приводит к тому, что нам приходится заново создавать инфраструктуру вместо того, чтобы заниматься разработкой приложений. Мы думаем, что проблема возникла потому, что производители ORB не слишком задумывались о требованиях предъявляемых к серверной части системы. Нельзя просто сваливать свои проблемы на пользователей. Многие из первый пользователей CORBA тратили огромное количество времени и энергии для того, чтобы обеспечить масштабируемость серверов. Да, ORB действительно хороши, но кто-то должен обеспечить функциональность и масштабируемость серверов.

Вот наши «вечные» вопросы к поставщикам ORB:

Справедливости ради надо отметить, что у конкурирующих технологий дела обстоят не лучше. DCOM все еще в ужасной форме; может быть, дело поправвит Viper. На сегодня единственной альтернативой для ORB являются процедура ориентированные мониторы транзакций. ObjectBroker фирмы Digital был использован с приложением, обслуживающим 10000 клиентов и 750000 вызовов методов в день. Источник: Gushing Group, Distributed Object Technology at Wells Faigo.

Другими словами, когда будет обеспечено взаимодействие серверной части ORB с мониторами транзакций, ODBMS и RDBMS? Поставщики ORB - это просто создатели middleware для решения коммуникационных задач, и они не имеют дело с обсуждаемыми проблемами. В самом деле, вы же не покупаете программные оболочки, ориентированные на разработку определенного класса приложений, у фирм, занимающихся реализацией протокола TCP/IP.

Кто же возьмется за решение поставленных задач? . Впрочем, есть основания считать, что разработчики мониторов транзакций наконец то приняли вызов .

МОНИТОРЫ ТРАНЗАКЦИЙ И ORB

Мониторы транзакций - прямые конкуренты распределенных объектных систем в борьбе за то, чтобы стать базовой платформой для создания и обслуживания 3 хзвенных клиент серверных приложений. Поэтому нет ничего удивительного, что возможности Брокеров Объектных Запросов ORB, таких, как CORBA и DCOM, внимательно изучаются и учитываются при разработке следующего поколения ТР Мониторов. Фактически, некоторый их основных поставщиков Мониторов Транзакций близки к реализации нового поколения систем, построенных "поверх" ORB. Мы знаем о трех крупных проектах создания базирующихся на ORB Мониторов Транзакций: Business Object Server Solution (BOSS) IBM, базирующийся на Tuxedo фирмы ВЕА Systems и Viper Microsoft. Разумеется, Viper может обслуживать только объекты DCOM. Чем могут быть ТР Мониторы полезны для ORB? В "чистых" реализациях CORBA или DCOM объекты могут существовать где угодно и когда угодно. Под управлением же ТР Мониторов поведение объектов становится более предсказуемым. Например, ТР Монитор может выполнить предварительное создание объекта, управлять его жизненным циклом и обеспечить идентификацию дна уровне транзакций. ТР Мониторы не любят неожиданных действий. Они предпочитают быть в курсе всех вопросов, касающихся программных сред. Наоборот, "чистые" объекты по своей природе тяготеют к анархии. Сочетание объектов и ТР Мониторов способно породить очень интересные конструкции.

Что могут сделать ORB для ТР Мониторов? ORB предоставляют стандартную транзакционную среду для управления объектами. ORB будут (или уже) встроены в наиболее распространенные операционные ситемы NT, OS/2 Waip, Windows95/98 и Macintosh. Кроме того, ОRB свободно распространяются в составе некоторых браузеров, тем самым ыступая в качестве основы для распределенных объектных систем, базирующихся на Java. На первое время, производителям ТР Мониторов не потребуется создавать свое middleware для управления транзакциями-как CORBA, так и DCOM содержат собственные сервера транзакий. Еще лучше то, что ТР Мониторы будут способны работать на стороне как клиента, так и сервера. Наконец, инфраструктура распределенных объектов сделает доступным для Мониторов Сервисы CORBA, включая использование метаданных, динамические вызовы, хранение объектов, отношения, события, фабрики компонентов, поиск по именам, лицензирование, безопасность и многое другое. В противном случае производителям ТР Мониторов пришлось бы все это создавать самим.

Объектный подход позволит упростить создание и управление сложными моделями транзакций такими, как вложенные транзакции и длительные транзакции (или рабочие потоки, "workflows"). Мониторы станут средой управления очень "разумными" компонентами. Если TP Мониторы и ORB договорятся играть по общим правилам, они смогут буквально творить чудеса. ТР Мониторы станут координаторами распределенных объектов в Internet и intranet. Вместо того, чтобы управлять методами классов, они будут управлять Java Beans, Oracle Cartridges, CORBA Business Objects и Vipenzed ActiveX'ми. Мониторы транзакций будут отвечать за предварительное создание компонентов, управление их состоянием и координацию поведения объектов в сетях. ТР Мониторы обеспечат широкий спектр важнейших сервисов, включая управление длинными транзакциями и транзакционными рабочими потоками, распределение нагрузки, управление транзакционными очередями, обеспечение устойчивости к сбоям и управление жизненным циклом объектов. ТР Мониторы помогут ORB выйти на уровень инструмента для создания наиболее ответственных приложений. В свою очередь, ORB откроют ТР Мониторам доступ к базовым технологиям создания клиент серверных систем в роли Дирижера Object Web.

Этикет OLTP: Пять Заповелей

Онлайновые Системы Управления Транзакциями (Online Transaction Processing, OLTP) имеют 30 летние традиции выжимание максимума возможного из доступных системных ресурсов для повышения производительности. Вот кто настоящий мастер в деле обеспечения масштабируемости. Большинство из наиболее известных в мире клиент серверных систем следуют правилам OLTP. Обычно вопросы синхронизации берут на себя Мониторы Транзакций. Для того, чтобы комфортно чувствовать себя в OLTP системе, ваше приложения должно твердо следовать следующим заповедям:

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

Готова Ли CORBA Играть Ведущую Роль В Архитектуре Клиент Сервер?

Перед тем как закончить разговор о нынешнем состоянии CORBA, мы хотели бы высказать свои соображения по этой проблеме. Во первых, CORBA вернула интерес к клиент серверным системам. Сейчас удачное время для того, чтобы быть программистом. Во вторых, эта история не имеет завершения. Object Web только "пошел на взлет". Двумя базовыми технологиями для Object Web являются CORBA и Java. Тем не менее, только CORBA и Java недостаточно.

Значит ли это, что еще не наступило время CORBA и Java? Конечно же, нет! Главное впечатление, которое должно у вас возникнуть - что вы можете и должны начать работу с ними прямо сейчас. Даже в своем нынешнем виде, CORBA/Java предоставляют наилучшую на сегодня платформу для создания Web ориентированных клиент серверных приложений.

Кроме того, объектам CORBA/Java суждена долгая жизнь, так что вам не придется без конца переписывать ранее созданный код. Концепция распределенных объектов только набирает силу. Ваши приложения должны быть совместимы с новыми версиями используемых средств. В этом великое достоинство унифицированного стандартного подхода.

Каков цикл развития CORBA? Его вид очень типичен для новых клиент серверных технологий. В первые годы упор делался на расширение функциональности. "Mission critical" характеристики появились позднее. CORBA только становится инструментом для создания наиболее ответственных и сложных приложений. Производители ORB получают огромное количество откликов от их измученных и нетерпеливых пользователей. Вследствие этого, они повысили качество и надежность ORB. Мы надеемся, что в будущем ORB станут такими же продвинутыми и надежными, как ТР Мониторы сегодня. Используйте а ваших первых клиент серверных CORBA приложениях только объекты серверы, не имеющие состояния. Ими гораздо проще управлять, и не возникает никаких проблем, связанных с масштабируемостью. К использованию объектов с состоянием после появления Объектных Мониторов Транзакций и доступных ODBMS. Поверьте нам, эта та часть инфраструктуры приложения, которую не следует создавать самому.


назад | содержание | далее