Диссертация (1136162), страница 6
Текст из файла (страница 6)
Основу J2EE составляет компонентная модель EnterpriseJavaBeans (EJB), в значительной степени аналогичная OMG CORBA.Благодаря наследованию передовых возможностей лучших из предыдущихстандартов (прежде всего, CORBA), а также XML, технология J2EE предлагаетдостаточно унифицированную и гибкую архитектуру корпоративного ПО дляинтернет/интранет. Помимо EJB, подход J2EE объединяет стандарты JavaServlets и JavaServer Pages для динамического формирования реакции надействия корпоративных пользователей в глобальной сети вычислений, а такжестандарт JDBC для доступа к БД.Основные инструментальные возможности архитектуры J2EE включаютсервисы для поиска J2EE-компонентами объектов в распределенной средевычислений, для доступа прикладного ПО к корпоративным БД и репозиториям,для организации транзакций, для обмена сообщениями, а также интерфейсы сприкладным ПО обработки сообщений электронной почты и коннекторы длявзаимодействия с «унаследованными» ИС.ПрикладнаяраспределенныхчетырехуровневаякорпоративныхИСархитектурнаявключаетсхемауровниJ2EEдлякомпонентПО,выполняющихся на клиентских компьютерах, интернет-серверах, серверах J2EEи корпоративных приложений, (преимущественно на серверах БД).
В развитиетрадиционной трехзвенной архитектуры ПО, прикладная архитектурная схемаJ2EE содержит уровень интернет-серверов, реализующих презентационнуючасть веб-интерфейса.27Гетерогенные компоненты прикладного ПО включают клиентское ПО сапплетами, интернет-серверные сервлеты и страницы Java Server Page (JSP), атакже бизнес-компоненты серверов приложений EJB и взаимодействуютпосредством стандартных языков, средств и сетевых протоколов (HTML, XML,RMI, HTTP, HTTPS и IIOP).
Они функционируют в прикладной средеконтейнеров(низкоуровневыхприкладныхинтерфейсов,связывающихкомпоненты с клиентами и программной платформой), ориентированной навзаимодействие с программно-аппартатными средствами и клиенстким ПО.Контейнерная технология существенно упрощает развертывание прикладногоПО, обеспечивает безопасность транзакций и именование прикладных сервисовс поддержкой важнейших этапов ЖЦ компонент и взаимодействия с хранимымиданными.
Для взаимодействия с существующими приложениями (включая«унаследованные») реализован унифицированный интерфейс коннекторов.ВглобальнойсредесгетерогеннымиданнымиклиентскиеJ2EEкомпоненты могут взаимодействовать с серверными компонентами J2EE, атакже с CORBA-компонентами и клиентским интернет-ПО, универсальныминтерфейсом которого является интернет-браузер.
Интернет-клиенты состоят издинамических веб-страниц, формируемых компонентами на интернет-серверах ивизуализируемых веб-браузерами.Технология J2EE широко поддержана серверами приложений, которыенаиболее активно используются для создания интернет-ПО и позволяютотносительнобыстросоздаватьгибкие,масштабируемыеивысокопроизводительные интернет-порталы. Отмечается, что архитектура J2EEявляется наиболее подходящей для этих целей [1]. Кроме того, на основе J2EEуспешно функционируют крупномасштабные корпоративные приложения ERPи CRM-типов.Подход .NET (www.microsoft.com/net) основан на технологии COM(www.microsoft.com/com, Microsoft, 1993 г.), использовавшей ряд основных идей28CORBA,(вчастности,языкописанияинтерфейсовIDL,www.omg.org/gettingstatrted/omgidl).Несмотря на адекватные технологические показатели CORBA, подходCOM не был лишен существенных недостатков, наиболее значимым из которыхявлялось отсутствие поддержки распределенных (выполняющихся на несколькихкомпьютерах) вычислений.
Это несоответствие требованиям интернет-средыбыло лишь частично устранено посредством усовершенствованных архитектур:COM+,атакже«распределенной»www.microsoft.com/com/tech/dcom.asp).упрощенияразработки,внедренияDCOM-(DistributedCOM,В этой связи для сокращения иисопровожденияраспределенныхпрограммных систем на базе COM-архитектуры и сервера транзакций MicrosoftTransactionServerкорпорациейбыларазработанатехнология.NET,ориентированная на глобальное сетевое прикладное ПО.Среда .NET предназначена для выполнения интернет-приложений в ОСWindows, она расширяет компонентную модель COM+, дополняет ОСфункциями автоматической сборки мусора и упрощенного доступа к БД иинтернет, а также развивает среду управления интернет-приложениями ASP(Active Server Pages, www.asp.net).Основная идея .NET заключается в управляемом коде, выполняемом всреде вычислений CLR (Common Language Runtime) – расширении ОС Windowsдля гетерогенного прикладного ПО. Среда CLR унаследовала ряд характеристикJava Runtime Environment (JRE): компиляцию в код виртуальной машины (MSIL,Microsoft Intermediate Language), автоматическую «сборку мусора» (garbagecollection) и управление доступом к распределенному программному коду.
Как иJava, .NET реализует идею формирования машинного кода «на лету» (just-intime) c генерацией машинного кода из MSILкода и выполнением программы всреде CLR (с реализацией в виртуальной машине активной или «ленивой» – понеобходимости – стратегии вычислений).В отличие от Java, .NET поддерживает языковую интероперабельность припроектировании и реализации гетерогенных программных комплексов.29Управление данными в архитектуре .NET осуществляется на основеобработки метаданных (так, контроль версий компонентов ПО автоматическиотслеживается на основе манифестов – файлов с метаданными о результатахсборки программных комплексов). Для динамических интернет-приложенийиспользуется среда активных серверных страниц ASP.NET с явным разделениемдинамического кода от статического HTML-текста и возможностью сохранениясостояния сессий пользователя и приложения, причем метаинформация оконфигурацииинтернет-приложенияхранитсявформатеXMLвеб-сервисы.NET(www.w3.org/xml), также как и в архитектуре J2EE.Важноенаправлениеинтернет-технологий–(www.msdn.microsoft.com/webservices) – предназначены для взаимодействияприложений и гетерогенных данных в глобальной среде на основе рядастандартов международной организации W3C (SOAP, WSDL, UDDI).
Дляподдержки веб-сервисов Microsoft (совместно с IBM) предложена архитектураSOA (Service-Oriented Architecture), базирующаяся на понятии сервиса какосновы взаимодействия приложений. Роли в SOA включают подписчика(requester), запрашивающего сервис, поставщика (provider) услуги и брокера(broker), реализующего поиск поставщика для подписчика.Веб-сервисыразвиваются в направлении «облачных» технологий, при этом в качествеарендуемого сервиса может предоставляться целевое ПО (Software as a Service),включая как виртуальный сервер (Infrastructure as a Service) так и ОС смногоуровневыми приложениями (Platform as a Service).
Ограничениябезопасноститехнологии,данныхвынуждаютинтегрирующиекорпорациитрадиционныеиприменять«гибридные»«облачные»архитектуры(http://marketing.rbc.ru/reviews//it-business/chapter_6_2.shtml).Технологически .NET представляет собой семейство серверных продуктов,основанноенараспространенныхбизнес-иинтернет-стандартахипредназначенное для развертывания и управления приложениями, построениябизнес-процессов и масштабируемых ИС электронной коммерции, управленияконтентом интернет- и интранет-сайтов, обмена сообщениями, обеспечения30совместной работы, интеграции «унаследованных» приложений, организациипоиска по интернет-ресурсам и доступа к ним, поддержки мобильных устройств,а также хранения, извлечения и анализа структурированных XML-данных.1.4 Комплекс критериев и результаты сравнительного анализаархитектурных подходовВажнейшими критериями для оценки архитектурной составляющейтехнологии интеграции данных в гетерогенных КПК являются: переносимостьприложенияадаптивность,наразличныеплатформы,масштабируемость,расширяемость,отказоустойчивость,открытость,наличиеквалифицированных разработчиков, а также объем и сложность проекта.По данным Gartner Group (www.gartner.com) начиная с 2000-х гг.
по триаде«стоимость – риск – время на разработку» модель EJB значительно опережаетCOM. Gartner Group в отчете «Application Development Management Strategies»(2001 г.) называет J2EE основной архитектурой для корпоративных приложенийна ближайшие годы и отмечает, что подход Microsoft .NET и архитектура SOAеще не достигли этого уровня. К 2010 г. функциональные возможности подходов.NET и J2EE стали вполне сопоставимыми. В дальнейшем прогнозируетсяравнозначность архитектур J2EE и .NET при их конвергенции с CORBA [1].Рассмотренные технологии представляют собой решения из областиинтеграции корпоративных приложений (Enterprise Integration Application, EAI).Утвердившийся подход к интеграции приложений заключается в описаниивнешних интерфейсов, форматов сообщений и спецификаций, используемых дляпередачи этих сообщений. В процесс интеграции в современном пониманиивовлекается понятие качества обслуживания (Quality-of-Service), объединяющееобеспечение безопасности, надежности и транзакционной целостности.
Однако,поскольку средства интеграции прикладного ПО, как и сами приложения,реализуют потребности бизнеса, необходимо оснастить эти средства элементамиописания бизнес-процессов. В этой связи с конца 90-х гг. начался выпуск серииспецификаций OMG, формализующих понятие бизнес-объектов, средств31управленияимиираспределеннойгетерогеннойсетевойсредыихфункционирования, в т.ч.
Business Object Facility и Business Object ComponentArchitecture. Отдельные стандарты моделирования OMG (UML, MOF, MDA)позволяют связать бизнес-модель распределенной ИС с инструментальнымисредствами на основе CORBA.Хотя в архитектуре J2EE не стандартизованы средства моделирования ипроектирования бизнес-процессов, ряд RAD-средств (например, EmbarcaderoJBuilder,www.embarcadero.com/ru/products/jbuilder)содержитвстроенныевозможности для автоматической генерации компонент J2EE на основе бизнесмоделей. Бизнес-процессы .NET являются необходимым элементом интеграцииприложений; они определяют бизнес-логику и сопровождающий ее потоксообщений для обработки и организации обратной связи.Хотя любая из трех расссмотренных сред представляет собой ППО, длякаждой из них (CORBA – в меньшей степени) характерно постепенноесращивание с ОС (.NET может рассматриваться как развитие ОС Windows; средаSun One предусматривает также интеграцию с аппаратной платформой).
Для всехрассмотренных архитектур сборка приложений определяется как объединениегетерогенных файлов. Наконец, во всех трех технологиях в качестведескрипторов используются XML-файлы, описывающие параметры выполненияприложений и настройки программно-аппаратной платформы.АрхитектурыJ2EEи.NETвследствиеблизостиконцепцийпридерживаются сходных подходов к созданию и обработке динамическихинтернет-страниц в форме JSP и ASP соответственно. Прослеживается аналогияи между другими интернет-компонентами, например, сервлетами в Javaтехнологии и ASP c развитием до Windows Communication Foundation.Все рассмотренные технологии интеграции КПК базируются на рядеобщих принципов и идей – компонентный подход, виртуальные машины и др.;они тесно связаны общим протоколом IIOP, программными «мостами» CORBACOM и COM-CORBA, активным использованием стандартов CORBA в J2EE,адекватной интерпретацией компонент EJB со стороны CORBA, а также рядом32других средств интеграции.