Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Технологии создания кросс-платформенных распределенных приложений

Покупка
Новинка
Артикул: 842297.01.99
Доступ онлайн
480 ₽
В корзину
Рассмотрены подходы к взаимодействию составных частей распределенной системы обработки информации и реализующее их промежуточное программное обеспечение. Приведены примеры использования рассмотренных программных средств и библиотек. Для студентов 5-го курса кафедры "Программное обеспечение ЭВМ и информационные технологии" МГТУ им. Н. Э. Баумана. Работа выполнена при поддержке Российского фонда фундаментальных исследований, грант № 06-07-89265.
Крищенко, В. А. Технологии создания кросс-платформенных распределенных приложений : учебное пособие / В. А. Крищенко. - Москва : Изд-во МГТУ им. Баумана, 2009. - 40 с. - ISBN 978-5-7038-3316-2. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2169586 (дата обращения: 06.10.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
Московский государственный технический университет
имени Н.Э. Баумана
В.А. Крищенко
ТЕХНОЛОГИИ СОЗДАНИЯ
КРОСС-ПЛАТФОРМЕННЫХ
РАСПРЕДЕЛЕННЫХ ПРИЛОЖЕНИЙ
Рекомендовано методической комиссией НУК ИУ
в качестве учебного пособия
Москва
Издательство МГТУ им. Н.Э. Баумана
2009


УДК 681.3.06
ББК 32.81
К82
Р е ц е н з е н т ы:
А.П. Носов, С.Б. Ткачев
К82
Крищенко В.А.
Технологии создания кросс-платформенных распределенных
приложений:
Учеб.
пособие.
–
М.:
Изд-во
МГТУ
им. Н.Э. Баумана, 2009. – 40 с.: ил.
ISBN 978-5-7038-3316-2
Рассмотрены подходы к взаимодействию составных частей распределенной системы обработки информации и реализующее их промежуточное программное обеспечение. Приведены примеры использования рассмотренных программных средств и библиотек.
Для студентов 5-го курса кафедры «Программное обеспечение
ЭВМ и информационные технологии» МГТУ им. Н.Э. Баумана.
Работа выполнена при поддержке Российского фонда фундаментальных исследований, грант №06-07-89265.
УДК 681.3.06
ББК 32.81
ISBN 978-5-7038-3316-2
c
⃝МГТУ им. Н.Э. Баумана, 2009


ПРЕДИСЛОВИЕ
Для создания распределенных систем обработки информации
студенты должны уметь применять технологии, позволяющие организовать взаимодействие внутри распределенной системы. В пособии рассмотрены базовые методы взаимодействия составных частей распределенных систем и их существующие реализации. Эти
средства не привязаны к конкретному производителю операционной системы, к платформе или языку программирования и в силу
этого могут использоваться для создания открытых распределенных
систем.
В пособии анализируются следующие виды взаимодействия в
распределенных системах и поддерживающее их промежуточное
программное обеспечение:
1) синхронный обмен (рассмотрен на основе использования высокоуровневого удаленного вызова и веб-служб, базирующихся на
архитектуре REST; удаленный вызов рассмотрен на примере использования протоколов Zeroc Ice и XML-RPC, веб-службы – на
основе использования платформы Ruby on Rails);
2) издание событий и подписка на события (рассмотрены на
примере использования систем Zeroc IceStorm и ActiveMQ);
3) асинхронный обмен сообщениями (показан на примере использования системы очередей сообщений ActiveMQ и учебной
программы, реализующей посредника асинхронного обмена с интрефейсом на базе протокола XML-RPC).
Для оформления примеров в пособии использованы языки программирования высокого уровня Python, Ruby и Erlang. Все представленные системы и библиотеки лицензированы по одной из свободных лицензий. Команды в тексте пособия даны для POSIXподобных систем, но все описываемые системы работают и в ОС
Microsoft Windows.


1. СИНХРОННЫЙ ОБМЕН НА ОСНОВЕ УДАЛЕННОГО
ВЫЗОВА ПРОЦЕДУР
1.1. Удаленный вызов процедур
Понятие удаленного вызова процедур (Remote Procedure Call –
RPC) первоначально возникло в теории операционных систем как
расширение локального вызова процедур в случае соединения двух
компьютеров в вычислительную сеть.
В настоящее время существует множество технологий, позволяющих выполнять платформонезависимый высокоуровневый удаленный вызов, используя, например, HTTP в качестве транспортного протокола и XML для хранения информации о параметрах
удаленного вызова. Такие технологии значительно отличаются по
возможностям и сложности реализации от первоначального варианта удаленного вызова, но основная идея остается неизменной – это
попытка скрыть факт удаленного взаимодействия для разработчика.
Удаленный вызов требует наличия у клиента (вызывающей стороны) полной информации об удаленном программном интерфейсе
сервера (вызываемой стороны). Применение удаленого вызова означает также необходимость одновременного взаимодействия клиента
и сервера.
Достоинством удаленного вызова процедур является возможность не различать в программе удаленный и локальный вызовы
функций. Если в ходе удаленного вызова нет пересечения границы
доверия между организациями, то данный механизм позволяет практически прозрачно организовать синхронное взаимодействие между
компонентами программного обеспечения на различных компьютерах по модели «запрос – ответ» или «одностороний запрос».
С ростом популярности объектно-ориентированного подхода появилось понятие удаленного объекта. В целях разумного применения ресурсов сервера привлечение удаленных объектов обычно
4


Доступ онлайн
480 ₽
В корзину