Крищенко ТЕХНОЛОГИИ СОЗДАНИЯ КРОСС-ПЛАТФОРМЕННЫХ РАСПРЕДЕЛЕННЫХ ПРИЛОЖЕНИЙ Рекомендовано методической комиссией НУК ИУ в качестве учебного пособия Москва Издательство МГТУ им. <...> В пособии анализируются следующие виды взаимодействия в распределенных системах и поддерживающее их промежуточное программное обеспечение: 1) синхронный обмен (рассмотрен на основе использования высокоуровневого удаленного вызова и веб-служб, базирующихся на архитектуре REST; удаленный вызов рассмотрен на примере использования протоколов Zeroc Ice и XML-RPC, веб-службы – на основе использования платформы Ruby on Rails); 2) издание событий и подписка на события (рассмотрены на примере использования систем Zeroc IceStorm и ActiveMQ); 3) асинхронный обмен сообщениями (показан на примере использования системы очередей сообщений ActiveMQ и учебной программы, реализующей посредника асинхронного обмена с интрефейсом на базе протокола XML-RPC). <...> СИНХРОННЫЙ ОБМЕН НА ОСНОВЕ УДАЛЕННОГО ВЫЗОВА ПРОЦЕДУР 1.1. <...> В настоящее время существует множество технологий, позволяющих выполнять платформонезависимый высокоуровневый удаленный вызов, используя, например, HTTP в качестве транспортного протокола и XML для хранения информации о параметрах удаленного вызова. <...> Удаленный вызов требует наличия у клиента (вызывающей стороны) полной информации об удаленном программном интерфейсе сервера (вызываемой стороны). <...> С ростом популярности объектно-ориентированного подхода появилось понятие удаленного объекта. <...> В целях разумного применения ресурсов сервера привлечение удаленных объектов обычно 4 связано с рядом ограничений как на время жизни удаленного объекта (например, только в течение одного удаленного вызова), так и на его использование (например, допуст´ им только вызов методов). <...> Удаленный вызов методов основан на создании посредника (proxy) на локальном компьютере, который реализует тот же интерфейс, что и удаленный объект, и передает на удаленный компьютер полученные <...>
Технологии_создания_кросс-платформенных_распределенных_приложений.pdf
УДК 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
-МГТУ им. Н.Э. Баумана, 2009
c
Стр.2
ОГЛАВЛЕНИЕ
Предисловие . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1. Синхронный обмен на основе удаленного вызова процедур . . . . .
1.1. Удаленный вызов процедур . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
4
1.2. Библиотека Zeroc Ice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3. Описание интерфейса удаленного объекта . . . . . . . . . . . . . . . .
1.4. Пример использования библиотеки Ice . . . . . . . . . . . . . . . . . . .
6
8
2. Издание событий и подписка на события . . . . . . . . . . . . . . . . . . . . . . . 12
2.1. Модель подписки на события . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2. Библиотека IceStorm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3. Пример использования подписки на события . . . . . . . . . . . . . 14
3. Синхронный обмен на основе веб-служб методологии REST. . . . 17
3.1. Методология REST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2. Пример веб-службы методологии REST . . . . . . . . . . . . . . . . . . 20
3.3. Пример клиента веб-служб методологии REST . . . . . . . . . . . 23
4. Асинхронный обмен с использованием очередей сообщений . . . . 25
4.1. Система ActiveMQ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.2. Пример использования очередей сообщений . . . . . . . . . . . . . . 26
5. Система обмена сообщениями с использованием протокола
XML-RPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.1. Протокол XML-RPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2. Пример учебной системы очередей сообщений . . . . . . . . . . . 32
Список литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Стр.39