Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Тема- DCOMтехнологія

Работа добавлена на сайт samzan.net:


ЛЕКЦІЯ №12

Тема: DCOM-технологія. CORBA-технологія. Розподілене програму-вання

План лекції

  1.  Порівняльний аналіз технологій CORBA і COM
  2.  Концептуальний фундамент технології
  3.  Комплексність системи
  4.  Використовувані мови програмування

Порівняльний аналіз технологій CORBA і COM 1

Зростання популярності розподілених систем викликане істотним посилюванням вимог, що пред'являються замовником до сучасних програмних продуктів. Мабуть, найважливішими з цих вимог є наступні:

  •  Забезпечення масштабованості систем, тобто здібності ефективно обслуговувати як мале, так і дуже велика кількість клієнтів одночасна.
  •  Надійність створюваних застосувань. Програмний комплекс має бути стійкий не лише до помилок користувачів (це визначається головним чином якістю клієнтських застосувань), але і до збоїв в системі комунікацій. Надійність має на увазі використання транзакцій, тобто гарантованого переходу системи в процесі функціонування з одного стійкого і достовірного стану в інше.
  •  Можливість безперервної роботи протягом довгого часу (так званий режим 24x7, тобто режим цілодобової роботи протягом тижнів і місяців).
  •  Високий рівень безпеки системи, під якою розуміється не лише контроль доступності тих або інших ресурсів системи і захищеність інформації на всіх етапах функціонування, але і відстежування виконуваних дій з високою мірою достовірності.
  •  Висока швидкість розробки додатків і простота їх супроводу і модифікації з використанням програмістів середньої кваліфікації.
  •  Виявилось, що забезпечити відповідність цим вимогам, використовуючи традиційні технології - а саме, двухзвенные системи клієнт-сервер, в яких як сервери виступають системи управління базами даних, майже неможливо.
  •  Відмітимо, що далеко не для всіх застосувань вищеперелічені вимоги є істотними. Легко представити розподілену систему, яка функціонує на невеликій (до 100) кількості комп'ютерів, що працюють в локальній мережі, де немає проблем з перезапуском одного або двох-трьох серверів у разі потреби, а головними завданнями, для вирішення яких використовуються розподілені технології, є завдання використання функціональності декількох стандартних серверів додатків (наприклад, текстових процесорів, броузеров і електронних таблиць) на користь клієнтських завдань. Необхідно мати на увазі, що термін розподілені системи відноситься до величезного числа завдань самого різного класу.

COM і CORBA можна порівнювати лише з врахуванням певних допущень. Відмова від таких допущень легко дозволяє отримати який завгодно результат. Ось ці допущення:

  •  CORBA, на відміну від COM’а, є концепцією, а не її реалізацією. Коли ми говоримо COM, то розуміємо під цим швидше набір конкретних засобів - елементів операційної системи, бібліотек, утиліт і тому подібне, що є складовою частиною того, що називається Microsoft Windows. Під терміном CORBA розуміється саме складна і розвинена концепція, сформульована на рівні спеціальної мови описів, - IDL. Реалізації ж цієї концепції можуть сильно відрізнятися один від одного по різних критеріях, найбільш важливих в тому або іншому випадку. Inprise/Corel VisiBroker і Application Server, BEA WebLogic, Iona Orbix, Oracle Application Server і картріджи Oracle, IBM BOSS - всі ці продукти використовують ті або інші можливості CORBA. Технологія Sun Enterpise JavaBeans створена поверх CORBA і використовує такі її можливості, як видалений виклик об'єктів, службу імен, управління транзакціями. Реалізація EJB фірми Inprise пов'язано з CORBA ще тіснішим чином. Ми порівнюватимемо COM і CORBA саме як концепції створення розподілених систем, а не як ту або іншу їх реалізацію.
  •  При роботі з реальним проектом необхідно враховувати сферу застосування тієї або іншої технології. COM (як цілісне і комплексне рішення) здатний функціонувати лише під Windows NT/Windows2000. Міркування про перенесення COM на інші операційні системи зараз носять швидше рекламний характер. Ні компонентна модель COM (тобто ACTIVEX), ні монітор транзакцій (Microsoft Transaction Server, MTS) не здатні працювати ніде, окрім Windows, і сама Microsoft не проявляє жодної активності в цьому напрвлении (питаннями перенесення тих або інших елементів COM на інші платформи займається консорціум Open Group). CORBA є багатоплатформеним рішенням просто за визначенням.
  •  Окрім чисто технологічних аспектів, при ухваленні рішення необхідно оцінити витрати на закупівлю необхідного програмного забезпечення, його супроводи і навчання персоналу. COM (на відміну від CORBA) офіційно є безкоштовною технологією. Ви отримуєте все необхідне, просто придбавши, наприклад, Windows NT Server. (До речі, сам факт конкуренції дорогої технології з аналогічною, але безкоштовною, багато що говорить про їх технічні можливості).
  •  Наявність готових серверів додатків, придатних для вирішення вашого завдання. Якщо Ви можете вирішити свої проблеми, використовуючи функціональність Microsoft Office, то нічого кращого COM ви, природно, не знайдете.

Концептуальний фундамент технології

COM  Технологія створювалася фірмою Microsoft як засіб взаємодії додатків (у тому числі складових частин операційної системи) Windows, що функціонують на одному комп'ютері, з подальшим розвитком для використання в межах локальної мережі. Головне завдання на момент створення - забезпечення технології Object Linking and Embedding (OLE 1.0). Характерний, що обмін даними між додатками (Dynamic Data Exchange, DDE) спочатку будувався не по COM-технологии, а з використанням механізму повідомлень (messages). Розвиток технології йде у міру додавання нових можливостей. Як універсальна технологія взаємодії додатків COM почав використовуватися з OLE 2.0 (1991). Концепція технології нерозривно пов'язана з її реалізацією. Поява нових можливостей - це просто поява нових бібліотек, функцій API і утиліт Windows. Спільний знаменник технології - двійкова структура об'єкту, хоча зараз існує мова опису структури об'єкту - Interface definition Language (IDL).

CORBA  Технологія створювалася консорціумом OMG як універсальна технологія створення розподілених систем в гетерогенних середовищах. OMG є некомерційною організацією, що є співдружністю розробників програмного забезпечення і його споживачів, що об'єднали свої зусилля для створення специфікацій цієї технології. Зараз в OMG полягає більше 800 членів, включаючи всіх скільки-небудь серйозних виробників програмного забезпечення (і навіть з недавнього часу Microsoft). Перша специфікація CORBA з'явилася в 1991 р. Нові можливості офіційно вважаються доданими в CORBA у момент затвердження відповідної специфікації. Як правило, в розробці специфікації беруть участь найбільші фахівці в даної області. Розробка реалізації - завдання конкретної фірми. Зазвичай від затвердження специфікації до появи високоякісної реалізації проходит досить багато часу - інколи декілька років. Спільний знаменник технології - оголошення на мові IDL, яка є серцем CORBA з моменту її появи. (Існують три різні мови описів з однією і тією ж назвою - OSF IDL, Microsoft IDL і OMG IDL).

Виводи

Технологія CORBA носить істотно загальніший і універсальний характер, ніж COM, що закладене в її фундаменті. Випередження розробки специфікацій (в порівнянні з реалізаціями) дозволяє добитися більш зв'язною, цілісної і гармонійної системи. З іншого боку, при розробці реального проекту потрібно заздалегідь переконатися, що високоякісна реалізація того або іншого сервісу CORBA вже доступна (джерелами проблем можуть служити, наприклад, Persistence Service і Security Service).

Комплексність системи

COM містить все необхідне, що потрібне для побудови розподіленої системи: технологію видаленого виклику методів (як статичних, так і динамічних), бази даних серверних об'єктів (бібліотеки типів), які можуть бути імпортовані для аналізу структури серверів COM, універсальний протокол обміну між клієнтами і серверами, специфікації так званих складених документів (ActiveDoc), об'єктний монітор транзакцій (MTS), компонентну модель (ACTIVEX) і ін. Всі складові частини прекрасно відповідають один одному в рамках моделі COM. Унікальною можливістю COM є універсальна технологія доступу до баз даних - OLE DB/ADO.

CORBA  Зараз CORBA не має своєї власної компонентної моделі; робота над нею почалася в 1998 р. і ще не завершена. Це головний серйозний недолік. Правда, він декілька компенсується наявністю заснованою на CORBA компонентною моделлю Enterprise JavaBeans, так що програмісти на Java знаходяться в привілейованому положенні. Все інше, що присутній в COM, є і в CORBA, і навіть більш того - за винятком універсальної технології доступу до БД. Знову-таки, Java-программисты мають перевагу і тут - за рахунок наявності загальною для Java технології доступу до даних JDBC.

Виводи

Зараз COM більш закінчена система, але на нижчому рівні і при істотно більшій кількості обмежень, визначуваних самою концепцією системи.

Використовувані мови програмування

Потенційно COM можуть підтримувати самі різні мови програмування - все вирішує фірма Microsoft. Додавання деяких розширень або експертів (wizard) в систему розробки дозволить використовувати для роботи з COM будь-яку мову програмування. Зараз найширше використовуються Visual Basic, C++ і Delphi. Серйозні проблеми виникли при використання мови, на яку покладалися особливі надії, - з Java. Microsoft добилася прекрасної взаємодії Java з COM, але досягнуто це було шляхом відмови від переносимості таких Java-программ на інші віртуальні машини Java. Не випадково продукт фірми Microsoft - J++ - не містить в назві Java. Взагалі, рівень стандартизації для COM досить слабкий. Це не обов'язково потрібно розглядати як недолік - врешті-решт, мова C років п'ятнадцять прекрасно обходилася без формального стандарту.

CORBA  Під стандартом стосовно CORBA розуміється те, що офіційно затверджене консорціумом OMG. Треба сказати, що це дуже високий рівень легітимності, оскільки авторитет OMG на комп'ютерному світі надзвичайно високий. Зараз стандартизовано відображення мови IDL на 6 мов програмування - Ada, C, C++, Cobol, Java і Smalltalk. Існують також відображення на Pascal (точніше, Delphi), Perl, Python і ще десяток мов.

Найбільш використовуваними мовами зараз є Java (унаслідок прекрасної взаємодії Java-технологий, особливо JDBC, RMI, JNDI і EJB, з CORBA), і C++ - як найефективніша, потужніша і поширеніша мова комп'ютерної індустрії.

Виводи

Обоє технології не випробовують особливих проблем з точки зору взаємодії з мовами програмування. Деякі переваги має CORBA - за рахунок строгішої стандартизації і багатшого вибору доступних засобів розробки.

Питання для самоперевірки

  1.  Порівняльний аналіз технологій CORBA і COM
  2.  Концептуальний фундамент технології
  3.  Комплексність системи
  4.  Використовувані мови програмування

Література

Лавріщева К.М. Програмна інженерія – К., 2008. – 319с.

Липаев В.В. выбор и оценивание характеристик качества пограмных средств. Методы и стандарты. — М.: СИНТЕГ, 2001. — 228 с.

Якобсон А., Буч Г.и др.  Унифицированный процесс разработки программного обеспечения. — СПб.: Питер, 2002. — 496 с




1. тематики. Свойства умножения и деления.
2. Преподавание права в старших классах
3. Вариант 7 В городе N живет жителей.
4. Organization structure of Visa
5. лекциями с высланными по эл
6. 5 Введение
7. тематике 2 класс 20092010 учебный год
8.  Исследовательский раздел
9. реферат на тему- ldquo;Современная буржуазная философскорелигиозная антропология концепции Гельмута П
10. описательный серед 16 ~ начало 18в товароведнотехнологический нач 18нач 20 веков товароведноформирующий
11. Строительные конструкции
12. Уголовное право для направлений образовательные науки для специальностей 5В030100 для отделен
13. монета в очень плохом сохране практически без рельефаСОХРАН степень сохранности монеты от которого напря
14. Психологическая характеристика моральных чувств
15. Тема- Операционная система
16. Профессиональные деформации
17. УралЭНИН К а ф е д р а Промышленной теплоэнергетики курсовая расчетно графическая работа.
18. Актуальність вирішення трудових спорів та основні напрямки реформування законодавства у цій сфері
19. Курсовая работа- Средние века в исторической науке
20. Реферат- Направления развития информационных систем и систем документооборота в современных организациях