🗊 Презентация Вызовы удаленных процедур

Категория: Образование
Нажмите для полного просмотра!
Вызовы удаленных процедур, слайд №1 Вызовы удаленных процедур, слайд №2 Вызовы удаленных процедур, слайд №3 Вызовы удаленных процедур, слайд №4 Вызовы удаленных процедур, слайд №5 Вызовы удаленных процедур, слайд №6 Вызовы удаленных процедур, слайд №7 Вызовы удаленных процедур, слайд №8 Вызовы удаленных процедур, слайд №9 Вызовы удаленных процедур, слайд №10 Вызовы удаленных процедур, слайд №11 Вызовы удаленных процедур, слайд №12 Вызовы удаленных процедур, слайд №13 Вызовы удаленных процедур, слайд №14 Вызовы удаленных процедур, слайд №15 Вызовы удаленных процедур, слайд №16 Вызовы удаленных процедур, слайд №17 Вызовы удаленных процедур, слайд №18 Вызовы удаленных процедур, слайд №19 Вызовы удаленных процедур, слайд №20 Вызовы удаленных процедур, слайд №21 Вызовы удаленных процедур, слайд №22 Вызовы удаленных процедур, слайд №23 Вызовы удаленных процедур, слайд №24 Вызовы удаленных процедур, слайд №25 Вызовы удаленных процедур, слайд №26 Вызовы удаленных процедур, слайд №27 Вызовы удаленных процедур, слайд №28 Вызовы удаленных процедур, слайд №29 Вызовы удаленных процедур, слайд №30 Вызовы удаленных процедур, слайд №31 Вызовы удаленных процедур, слайд №32 Вызовы удаленных процедур, слайд №33 Вызовы удаленных процедур, слайд №34 Вызовы удаленных процедур, слайд №35 Вызовы удаленных процедур, слайд №36 Вызовы удаленных процедур, слайд №37 Вызовы удаленных процедур, слайд №38 Вызовы удаленных процедур, слайд №39 Вызовы удаленных процедур, слайд №40 Вызовы удаленных процедур, слайд №41 Вызовы удаленных процедур, слайд №42 Вызовы удаленных процедур, слайд №43 Вызовы удаленных процедур, слайд №44 Вызовы удаленных процедур, слайд №45 Вызовы удаленных процедур, слайд №46 Вызовы удаленных процедур, слайд №47 Вызовы удаленных процедур, слайд №48 Вызовы удаленных процедур, слайд №49 Вызовы удаленных процедур, слайд №50

Содержание

Вы можете ознакомиться и скачать презентацию на тему Вызовы удаленных процедур. Доклад-сообщение содержит 50 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1


Вызовы удаленных процедур Судаков А.А. “Параллельные и распределенные вычисления” Лекция 5
Описание слайда:
Вызовы удаленных процедур Судаков А.А. “Параллельные и распределенные вычисления” Лекция 5

Слайд 2


План Что такое RPC? SUN RPC XML RPC Распределенные объектные системы (CORBA, COM)
Описание слайда:
План Что такое RPC? SUN RPC XML RPC Распределенные объектные системы (CORBA, COM)

Слайд 3


RPC Вызов удаленных процедур – программный интерфейс, который позволяет вызывать подпрограммы на удаленных машинах в сети
Описание слайда:
RPC Вызов удаленных процедур – программный интерфейс, который позволяет вызывать подпрограммы на удаленных машинах в сети

Слайд 4


Для чего нужно? Не всегда есть возможность запускать программу на другой машине Работа в режиме ядра Запуск программы может оказаться очень медленной...
Описание слайда:
Для чего нужно? Не всегда есть возможность запускать программу на другой машине Работа в режиме ядра Запуск программы может оказаться очень медленной операцией Синхронизация содержимого файла Необходим стандартный подход для создания распределенных приложений Независимо созданные программы должны работать друг с другом

Слайд 5


Промежуточное программное обеспечение RPC использует middleware для того, чтобы скрыть детали реализации от пользователя
Описание слайда:
Промежуточное программное обеспечение RPC использует middleware для того, чтобы скрыть детали реализации от пользователя

Слайд 6


RPC middleware RPC middleware является надстройкой над клиент- серверной платформой Программа, которая вызывает удаленную функцию является клиентом...
Описание слайда:
RPC middleware RPC middleware является надстройкой над клиент- серверной платформой Программа, которая вызывает удаленную функцию является клиентом Сервера, которые выполняют функции работают прозрачно для клиентов Существуют вспомогательные сервера

Слайд 7


Преимущества Преимущества Упрощение интерфейса и разработки Стандартизация Параллелизм на уровне процедур Недостатки Сложность программного...
Описание слайда:
Преимущества Преимущества Упрощение интерфейса и разработки Стандартизация Параллелизм на уровне процедур Недостатки Сложность программного обеспечения

Слайд 8


Где используются? Основной механизм для создания распределенных операционных систем Основной механизм для создания распределенных файловых систем...
Описание слайда:
Где используются? Основной механизм для создания распределенных операционных систем Основной механизм для создания распределенных файловых систем Часто используется для прикладных распределенных программ

Слайд 9


Какие существуют реализации? SUN RPC XML RPC Microsoft RPC
Описание слайда:
Какие существуют реализации? SUN RPC XML RPC Microsoft RPC

Слайд 10


SUN RPC Начало 1980-х годов Open Network Computing (ONC) фирмы SUN ( ) Создание распределенного программного обеспечения Протоколы Библиотеки,...
Описание слайда:
SUN RPC Начало 1980-х годов Open Network Computing (ONC) фирмы SUN ( ) Создание распределенного программного обеспечения Протоколы Библиотеки, вспомогательные утилиты и инструменты

Слайд 11


Основные определения Процедура характеризуется номером программы номером версии номером функции Клиент – программа, которая вызывает удаленную...
Описание слайда:
Основные определения Процедура характеризуется номером программы номером версии номером функции Клиент – программа, которая вызывает удаленную функцию Сервер – программа, которая выполняет запрос клиента Определитель транспорта – сервер, который ставит в соответствие номеру программы и номеру версии порт транспортного протокола

Слайд 12


Схема запроса
Описание слайда:
Схема запроса

Слайд 13


Вызов удаленной процедуры клиентом
Описание слайда:
Вызов удаленной процедуры клиентом

Слайд 14


Выполнение процедуры сервером
Описание слайда:
Выполнение процедуры сервером

Слайд 15


Синхронное и асинхронное выполнение
Описание слайда:
Синхронное и асинхронное выполнение

Слайд 16


Синхронное выполнение Преимущества Простота реализации программы Недостатки Затрачивается время на ожидание
Описание слайда:
Синхронное выполнение Преимущества Простота реализации программы Недостатки Затрачивается время на ожидание

Слайд 17


Асинхронное выполнение Преимущества Эффективное использование процессорного времени Недостатки Сложность реализации программ
Описание слайда:
Асинхронное выполнение Преимущества Эффективное использование процессорного времени Недостатки Сложность реализации программ

Слайд 18


Обратный вызов Клиент вызывает функцию на сервере и продолжает работу Сервер после выполнения функции вызывает функцию на клиенте И сервер и клиент...
Описание слайда:
Обратный вызов Клиент вызывает функцию на сервере и продолжает работу Сервер после выполнения функции вызывает функцию на клиенте И сервер и клиент являются агентами

Слайд 19


Авторизация AUTH_NONE отсутствует AUTH_SYS по идентификатору пользователя AUTH_DES по зашифрованному имени машины
Описание слайда:
Авторизация AUTH_NONE отсутствует AUTH_SYS по идентификатору пользователя AUTH_DES по зашифрованному имени машины

Слайд 20


RPC на реальных машинах
Описание слайда:
RPC на реальных машинах

Слайд 21


Разработка RPC программ Для разработки распределенных программ достаточно знать только интерфейсы (типы аргументов и возвращаемые значения) Можно...
Описание слайда:
Разработка RPC программ Для разработки распределенных программ достаточно знать только интерфейсы (типы аргументов и возвращаемые значения) Можно ввести специальный язык описания интерфейсов (rpcgen -> C/C++) Возможности программ можно наращивать постепенно добавляя новые удаленные процедуры на разных серверах

Слайд 22


Язык описания интерфейсов (rpcgen) program MYPROG { version MYVER { int MYPROC (string) = 1; } = 1; } = 0x2000000; Все интерфейсы взаимодействия...
Описание слайда:
Язык описания интерфейсов (rpcgen) program MYPROG { version MYVER { int MYPROC (string) = 1; } = 1; } = 0x2000000; Все интерфейсы взаимодействия создаются автоматически На сервере пользователь должен определить функцию int* myproc_1 (char**) {…} На клиенте вызов выполняется char* str = “Привет!”; CLIENT* cl=clnt_create(…); res = myproc_1(&str, cl)

Слайд 23


Другие недостатки SUN RPC Нет прозрачности расположения Нужно явно указывать, где находится сервер Нет простой системы имен для нахождения серверов...
Описание слайда:
Другие недостатки SUN RPC Нет прозрачности расположения Нужно явно указывать, где находится сервер Нет простой системы имен для нахождения серверов по их функциям Только процедурная ориентированность Не рассчитано на объектно-ориентрованные программы (нет наследования, полиморфизма) Единственный стандартный сервер – portmap Для распределенных приложений часто нужно выполнять синхронизацию, блокировки, транзакции Слабая система безопасности

Слайд 24


CORBA – common object relations broker architecture
Описание слайда:
CORBA – common object relations broker architecture

Слайд 25


Объектно-ориентированный подход Объект структура данных (свойств) имеет уникальное имя определены операции (методы), которые с этим (для этого)...
Описание слайда:
Объектно-ориентированный подход Объект структура данных (свойств) имеет уникальное имя определены операции (методы), которые с этим (для этого) объекта можно выполнять Инкапсуляция – вся сложность объекта скрыта от внешнего мира, внешнему миру доступны только имя и интерфейсы (методы) Классификация – объекты с одинаковой структурой и методами принадлежат к одному классу Наследование – усложнение классов путем добавления новых свойств и методов Полиморфизм – в зависимости от контекста методы с одинаковыми именами могут выполнять разные действия

Слайд 26


Распределенные объектные системы Объекты существуют в разных программах или даже на разных машинах Объект из одной программы может вызывать методы...
Описание слайда:
Распределенные объектные системы Объекты существуют в разных программах или даже на разных машинах Объект из одной программы может вызывать методы объекта, который существует в другой программе

Слайд 27


CORBA Стандарт для разработки распределенных объектно-ориентированных программ Независим от аппаратной и программной платформы Разработано Object...
Описание слайда:
CORBA Стандарт для разработки распределенных объектно-ориентированных программ Независим от аппаратной и программной платформы Разработано Object Management Group (OMG) CORBA 1.0, 2.0, 3.0

Слайд 28


Преимущества Стандарт Рассчитан на гетерогенность Совместим со многими языками программирования Обеспечивается безопасность и надежность Прозрачность...
Описание слайда:
Преимущества Стандарт Рассчитан на гетерогенность Совместим со многими языками программирования Обеспечивается безопасность и надежность Прозрачность расположения, конкуренции, параллелизма, миграции Объектно-ориентирован Параллелизм на уровне объектов

Слайд 29


Реализации MICO DCOM Orbacus OmniORB TAO (The ACE ORB) ORBit
Описание слайда:
Реализации MICO DCOM Orbacus OmniORB TAO (The ACE ORB) ORBit

Слайд 30


Структура
Описание слайда:
Структура

Слайд 31


ORB – object relations broker Выполняет все функции взаимодействия между объектами Скрывает детали передачи данных (сетевое программирование,...
Описание слайда:
ORB – object relations broker Выполняет все функции взаимодействия между объектами Скрывает детали передачи данных (сетевое программирование, сериализация, вызовы удаленных процедур ) Выполняет поиск объектов

Слайд 32


Взаимодействие между объектами
Описание слайда:
Взаимодействие между объектами

Слайд 33


Прокси и адаптор Прокси – интерфейс к удаленному объекту, который создается на локальной машине Адаптор – адаптирует особенности реализации...
Описание слайда:
Прокси и адаптор Прокси – интерфейс к удаленному объекту, который создается на локальной машине Адаптор – адаптирует особенности реализации серверного объекта к стандарту Клиент и сервер взаимодействуют через прокси и адапторы Прокси и адаптеры выполняют сериализацию и десериализацию, вызовы удаленных процедур, обработку ошибок – скрывают сложности протокола

Слайд 34


Взаимодействие между объектами (клиент)
Описание слайда:
Взаимодействие между объектами (клиент)

Слайд 35


Объектная ссылка (IOR) Содержит следующую информацию местоположение объекта сетевое имя машины номер порта транспортного протокола Ключ объекта...
Описание слайда:
Объектная ссылка (IOR) Содержит следующую информацию местоположение объекта сетевое имя машины номер порта транспортного протокола Ключ объекта (значение, которое однозначно дает возможность «воссоздать» интерфейс удаленного объекта) Дополнительная информация Авторизация

Слайд 36


Взаимодействие между объектами (сервер)
Описание слайда:
Взаимодействие между объектами (сервер)

Слайд 37


Службы Служба имен – нахождение серверных объектов по именам (преобразование имени объекта в объектную ссылку) Маклерская служба – нахождение...
Описание слайда:
Службы Служба имен – нахождение серверных объектов по именам (преобразование имени объекта в объектную ссылку) Маклерская служба – нахождение серверных объектов по описаниям и интерфейсам (объектная ссылка возвращается в соответствии с возможностями объектов)

Слайд 38


Поиск объектов Прямая передача объектной ссылки Серверный объект публикует свою объектную ссылку (www, ftp, NFS) Клиент должен «знать» как ее...
Описание слайда:
Поиск объектов Прямая передача объектной ссылки Серверный объект публикует свою объектную ссылку (www, ftp, NFS) Клиент должен «знать» как ее получить Поиск в службе имен Серверный объект регистрируется в службе имен (объектной ссылке взаимнооднозначно соответствует имя) Клиент запрашивает службу имен для получения объектной ссылки по имени Поиск по экспортируемым интерфейсам Серверный объект «рекламирует» свои возможности в маклерской службе (объектной ссылке соответствуют несколько интерфейсов) Клиент получает объектную ссылку в соответствии с необходимым интерфейсом

Слайд 39


Служба имен Хранятся пары имя-значение Иерархическая структура
Описание слайда:
Служба имен Хранятся пары имя-значение Иерархическая структура

Слайд 40


Поиск в службе имен Получаем ссылку на имя группы Последовательно получаем ссылки на элементы более низкого уровня
Описание слайда:
Поиск в службе имен Получаем ссылку на имя группы Последовательно получаем ссылки на элементы более низкого уровня

Слайд 41


Хранилища реализаций и интерфейсов Базы данных, которые содержат информацию, достаточную для запуска серверных приложений (когда не доступен IOR)...
Описание слайда:
Хранилища реализаций и интерфейсов Базы данных, которые содержат информацию, достаточную для запуска серверных приложений (когда не доступен IOR) Хранилище реализаций – полный путь к программе, которую нужно запустить для создания нужного объекта (сервер) Хранилище интерфейсов – информация о том для какого интерфейса к какому серверу обращаться (клиент) Необходимо лишь указать, на какой машине и каком порту работает хранилище реализаций и служба имен

Слайд 42


CORBA
Описание слайда:
CORBA

Слайд 43


DCOM
Описание слайда:
DCOM

Слайд 44


Компонентная модель
Описание слайда:
Компонентная модель

Слайд 45


Пример запуска CORBA объекта CORBA Click
Описание слайда:
Пример запуска CORBA объекта CORBA Click

Слайд 46


Язык описания интерфейса Для разработки распределенных программ достаточно знать только интерфейсы (имена объектов и прототипы функций, которые...
Описание слайда:
Язык описания интерфейса Для разработки распределенных программ достаточно знать только интерфейсы (имена объектов и прототипы функций, которые необходимо для них вызывать) Существует специальный язык для описания интерфейсов – IDL (interface description language) При компиляции файла описания интерфейса создаются файлы с каркасными реализациями на нужном языке программирования (Java, C, C++, Ada…) Пользователь использует каркасные классы для встраивания в них логической части

Слайд 47


IDL -> C++ IDL interface adding_machine{ void add(in unsigned long X); void subtract(in unsigned long X); long result(); }; Компиляция idl...
Описание слайда:
IDL -> C++ IDL interface adding_machine{ void add(in unsigned long X); void subtract(in unsigned long X); long result(); }; Компиляция idl adding_machine.idl Создаются каркасные классы class adding_machine : virtual public CORBA::Object{…} class adding_machine_stub : virtual public adding_machine{…} class adding_machine_skel : virtual public adding_machine{…} Пользователь определяет реализацию, как производные классы от какркасных class adding_machine_impl : virtual public adding_machine_skel{ void add(in unsigned long X){…} }

Слайд 48


Особенности Стандарт определяет большинство особенностей, но все же некоторые вещи остаются на усмотрения разработчиков Хотя созданные приложения и...
Описание слайда:
Особенности Стандарт определяет большинство особенностей, но все же некоторые вещи остаются на усмотрения разработчиков Хотя созданные приложения и будут взаимодействовать корректно, особенности запуска, инсталляции и др. может существенным образом отличаться

Слайд 49


Примеры Десктоп-системы (GNOME, KDE, MS Windows DCOM) Java приложения (сервлеты, Java Beans, Java RMI) Системы банк-клиент
Описание слайда:
Примеры Десктоп-системы (GNOME, KDE, MS Windows DCOM) Java приложения (сервлеты, Java Beans, Java RMI) Системы банк-клиент

Слайд 50


Вопросы ?
Описание слайда:
Вопросы ?



Похожие презентации
Mypresentation.ru
Загрузить презентацию