Теми рефератів
Авіація та космонавтика Банківська справа Безпека життєдіяльності Біографії Біологія Біологія і хімія Біржова справа Ботаніка та сільське гос-во Бухгалтерський облік і аудит Військова кафедра Географія
Геодезія Геологія Держава та право Журналістика Видавнича справа та поліграфія Іноземна мова Інформатика Інформатика, програмування Історія Історія техніки
Комунікації і зв'язок Краєзнавство та етнографія Короткий зміст творів Кулінарія Культура та мистецтво Культурологія Зарубіжна література Російська мова Маркетинг Математика Медицина, здоров'я Медичні науки Міжнародні відносини Менеджмент Москвоведение Музика Податки, оподаткування Наука і техніка Решта реферати Педагогіка Політологія Право Право, юриспруденція Промисловість, виробництво Психологія Педагогіка Радіоелектроніка Реклама Релігія і міфологія Сексологія Соціологія Будівництво Митна система Технологія Транспорт Фізика Фізкультура і спорт Філософія Фінансові науки Хімія Екологія Економіка Економіко-математичне моделювання Етика Юриспруденція Мовознавство Мовознавство, філологія Контакти
Українські реферати та твори » Информатика, программирование » Віддалений виклик методом RMI

Реферат Віддалений виклик методом RMI

Факультет В«Інформатика і системи управління В»

Методичні вказівки до лабораторної роботи

за курсом В«Розподілені системи обробки інформації В»

"Віддалений виклик методів ( RMI ) "

Москва 2004 р.


Мета роботи

Ознайомитися з RMI. Написати клієнт RMI і сервер RMI.

Що таке RMI?

Java RMI (Remote Method Invocation - віддалений виклик методів) являє собою тип віддаленого виклику процедур, незалежний від мережі, полегшений і повністю переносимий, так як написаний на мові Java.

Основні кроки роботи з RMI:

1. Визначте (Або знайдіть) віддалений інтерфейс, узгоджений з сервером.

2. Напишіть код сервера.

3. Запустіть програму rmic (Java RMI stub compiler - компілятор заглушок RMI) для генерації сполучного коду.

4. Напишіть код клієнта.

5. Переконайтеся, що на сервері запущений RMI реєстр (програма rmiregistry).

6. Запустіть сервер.

7. Запустіть одного або декількох клієнтів.

Процедури RMI визначають за допомогою відомого механізму Java - інтерфейсів. Дистанційні нтерфейси долдни бути підкласами java.rmi. Remote, при цьому і клієнт і сервер повинні знаходитися в одному пакеті Java. Всі параметри віддалених методів повинні ставитися або до примітивних типів (int, double і т.п.), або реалізовувати інтерфейс java.io. Serializable.

Введення в розподілені обчислення з використанням RMI

Технологія Remote Method Invocation (RMI), вперше представлена в JDK 1.1, просунула мережеве програмування на більш високий рівень. Хоча RMI відносно проста в використанні, вона є незвичайно потужною технологією і розкриває перед звичайним Java-програмістом повністю нову парадигму - світ розподілених об'єктних обчислень.

Цей курс являє собою поглиблене введення в цю універсальну технологію. RMI отримала значне розвиток в JDK 1.1 і багато в чому була покращена в Java 2 SDK. При необхідності, відмінності між цими двома версіями будуть відзначені.

Цілі

Головною метою розробників RMI було надання можливості програмістам розробляти розподілені Java-програми, використовуючи такі ж синтаксис і семантику, як і при розробці звичайних нерозподілених програм. Для цього вони повинні були перетворити модель роботи класів і об'єктів в одній віртуальній машині Java в„ў (JVM) в нову модель роботи класів і об'єктів в розподіленій (декілька JVM) обчислювальному середовищі.

Порівняння розподілених і нерозподілених Java -програм

Розробники RMI прагнули зробити використання розподілених Java-об'єктів таким же, як і використання локальних об'єктів. У наступній таблиці перераховані деякі важливі відмінності.

Не турбуйтеся про те, що не всі відмінності вам зрозумілі. Все проясниться після розгляду архітектури RMI. Ви можете використовувати цю таблицю у якості посилання під час вивчення RMI.

Локальний об'єкт Віддалений об'єкт Визначення об'єкта Локальний об'єкт визначається за допомогою класу Java. експортованого поведінку віддаленого об'єкта визначається за допомогою інтерфейсу, який повинен бути розширений з інтерфейсу Remote. Реалізація об'єкта Локальний об'єкт реалізується своїм класом Java. Поведінка віддаленого об'єкта визначається класом Java, який реалізує віддалений інтерфейс. Створення об'єкта Новий екземпляр локального об'єкта створюється оператором new. Новий екземпляр віддаленого об'єкта створюється на комп'ютері хоста оператором new. Клієнт не може безпосередньо створити новий віддалений об'єкт (якщо не використовує технологію Java 2 Remote Object Activation). Доступ до об'єкту Доступ до локального об'єкту здійснюється безпосередньо через змінну-посилання на об'єкт. Доступ до віддаленого об'єкту здійснюється через змінну-посилання на об'єкт, що вказує на реалізацію замісної заглушки віддаленого інтерфейсу. Посилання В одній JVM, посилання на об'єкт вказує безпосередньо на об'єкт в динамічній пам'яті. В«Дистанційна посиланняВ» являє собою вказівник на заміщає об'єкт (В«заглушкуВ») в локальній динамічної пам'яті. Заглушка містить інформацію, яка дає можливість з'єднатися з віддаленим об'єктом, що містить реалізацію методів. Активні посилання В одній JVM, об'єкт вважається В«ЖивимВ», якщо існує хоча б одне посилання на нього. У розподіленому середовищі віддалена JVM може зруйнуватися, і мережеве з'єднання може перериватись. Вважається, що віддалений об'єкт має активну віддалену посилання на нього, якщо до нього проводився доступ протягом певного періоду часу (терміну оренди). Якщо всі видалені посилання були видалені явно, або якщо у всіх віддалених посилань закінчився термін оренди, тоді віддалений об'єкт стає доступний для віддаленої збірки сміття. Фіналізація Якщо об'єкт реалізує метод finalize (), він викликається перед тим, як об'єкт утилізується складальником сміття. Якщо віддалений об'єкт реалізує інтерфейс Unreferenced, при видаленні всіх видалених посилань викликається метод unreferenced цього інтерфейсу. Збірка сміття При видаленні всіх локальних посилань на об'єкт, він стає кандидатом на видалення складальником сміття. Віддалений збирач сміття працює спільно з локальним. Якщо немає віддалених посилань і видалені всі локальні посилання на об'єкт, він стає кандидатом для збирача сміття у звичайному значенні цього поняття. Виняткові ситуації Виняткові ситуації є або винятковими ситуаціями часу виконання, або класом Exceptions. Компілятор Java змушує програму обробляти всі Exceptions. RMI змушує програму мати справу з будь-якими можливими об'єктами RemoteException, які можуть генеруватися. Це зроблено для гарантії стійкості розподілених додатків.

Архітектура Java RMI

Метою розробки архітектури RMI було створення розподіленої об'єктної моделі Java, яка вільно інтегрується в мову програмування Java і локальну об'єктну модель. Розробники RMI досягли цієї мети; була створена система, яка переносить безпеку і стійкість архітектури Java в світ розподілених обчислень.

Інтерфейси: основа RMI

Архітектура RMI заснована на одному важливому принципі: визначення поведінки і реалізація цієї поведінки вважаються різними поняттями. RMI дає можливість розділити і виконати на різних JVM код, що визначає поведінку, і код, що реалізовує поведінку.

Це прекрасно відповідає вимогам розподілених систем, в яких клієнти знають про визначеннях служб, а сервери надають ці служби.

Конкретно в RMI визначення віддаленої служби кодується за допомогою інтерфейсу Java. Реалізація віддаленої служби кодується в класі. Таким чином, ключ до розуміння RMI - пам'ятати, що інтерфейси визначають поведінку, а класи визначають реалізацію.

Наступний малюнок ...


Страница 1 из 3Следующая страница

Друкувати реферат
Замовити реферат
Товары
загрузка...
Наверх Зворотнiй зв'язок