Спецкурс Основы распределенной обработки информации
Лектор: доктор техн. наук, с. н. с. Карпов Леонид Евгеньевич
ведущий научный сотрудник института системного программирования РАН
Спецкурс рекомендован для студентов 3-5 курсов III-го потока.
Аннотация
Курс посвящен знакомству с основными свойствами информационных распределенных систем (гетерогенность, прозрачность, открытость, масштабируемость), рассматриваются механизмы реализации этих свойств, используемые при разработке программного обеспечения распределенных систем. Подробно изучаются базовые методы взаимодействия информационных распределенных систем - удаленный вызов процедуры и удаленное обращение к методу объекта, исследуются проблемы, связанные с прозрачностью вызова: преобразование данных при передаче параметров и результатов, согласование протоколов, синхронизация, отработка исключительных ситуаций.
В основе курса изучение промежуточного (интеграционного) слоя программного обеспечения распределенных систем (middleware) и различных вариантов его реализации: мониторов транзакций, брокеров и мониторов объектов, брокеров сообщений.
Изучаются методы интеграции приложений на базе технологий Интернета. Исследуются концептуальные основы построения сетевых служб (Web-services), архитектуры сетевых служб, изучаются их базовые компоненты: протокол доступа к объектам, язык описания службы, регистратор сетевых служб. Описываются методы композиции и скоординированной работы сетевых служб.
Программа курса
Введение
Понятие распределенной системы обработки информации. Виды и свойства распределенных систем. Архитектура программного обеспечения информационных систем. Управление взаимодействием приложений на гетерогенных платформах (middleware). Программная абстракция промежуточных слоев.
1. Основные механизмы
Понятие удаленной процедуры. Принцип работы. Проблемы управления исключительными ситуациями при удаленной обработке данных. Транзакционные мониторы, брокеры объектов и сообщений. Удаленный транзакционный вызов. Алгоритмы двух- и трехфазного подтверждения. Мониторы объектов. Динамический вызов объекта. Взаимодействие на основе обмена сообщениями. Очереди сообщений и транзакционные очереди.
2. Проблемы интеграции приложений
Комплексная интеграция приложений. Брокеры сообщений. Модель «публикация/подписка». Распределенное администрирование. Системы управления рабочим потоком (workflow). Определение. Принцип работы. Интеграция с другими видами промежуточных слоев программного обеспечения.
3. Технологии Интернета
Сетевые службы (Web Services). Глобальная интеграция с использованием сетевых служб. Протоколы и стандартизация. Сервисные службы и интеграция приложений. Публикация данных в сети. Взаимодействие сетевых служб. Базовые компоненты сетевых служб. Проблемы поиска вызываемых служб в сети. Интерфейсы и протоколы координации. Композиция и координация.
Литература
- Ф. Бернштейн. «Middleware: модель сервисов распределенной системы». Системы управления базами данных, № 2, 1997 г. (http://www.osp.ru/dbms/1997/02/41.htm).
- Darleen Sadoski. «Two-Tier Software Architecture». Carnegie Mellon SEI Software Technology Review, 1997 г. (http://www.sei.cmu.edu/str/descriptions/twotier.html)
- А. Касаткин. «Средства middleware и их классификация». PCWeek, № 19 (193), 1999 г. (http://www.pcweek.ru/year1999/N19/CP1251/CorporationSystems/chapt1.htm)
- М. Мамаев. Телекоммуникационные технологии (Сети TCP/IP). Владивостокский госуниверситет экономики и сервиса. Владивосток, 2001 г. (http://athena.vvsu.ru/net/book/index.htm).
- Э. Таненбаум, М. Ван Стен. Распределенные системы. Принципы и парадигмы. Питер, 2003 г.
- Стивенс У. Разработка сетевых приложений. Питер, 2004 г.
- Gustavo Alonso, Fabio Casati, Harumi Kuno, Vijay Machiraju. Web Services. Concepts, Architectures and Applications. Springer-Verlag, 2004.