Предисловие
Введение

ЧАСТЬ I. Основы

ГЛАВА 1. Общие понятия
Краткий обзор
Краткий словарь терминов
Графическое представление

ГЛАВА 2. Архитектуру CORBA
Эволюция CORBA
Поколения брокеров объектных запросов: BOA и РОА
Поколение BOA
Поколение РОА
Жизненный цикл вызовов
Запрос CORBA
Жизненный цикл вызова: критерии развития
Жизненный цикл вызова: эволюция спецификации BOA
Жизненный цикл вызова: эволюция спецификации РОА
Жизненный цикл объекта
Что такое объект CORBA
События жизненного цикла объекта
Раннее и позднее связывания
Систематика реализации объектов CORBA
Реализации объектов CORBA и управление памятью
Жизненный цикл объекта: критерии развития
Жизненный цикл объекта: развитие поколения BOA
Жизненный цикл объекта: развитие поколения РОА
Резюме

ГЛАВА 3. Службы CORBA
Основные службы
Интеграция с базами данных и обработка транзакций
Масштабируемость
Резюме

ГЛАВА 4. Простой пример
Общие рассуждения
Компонент StockWatch
Интерфейсы компонента StockWatch
Схема базы данных
Расширение архитектуры системы StockWatch
Компонент Portfolio Manager

ГЛАВА 5. Производительность работы
Проблемы производительности при использовании IDL
Модели доступа
Критичные факторы, оказывающие влияние на производительность
Примеры схем
Все объекты равны, но не все в равной степени
Передача больших объемов данных
Итераторы
Передача объектов по значению
Другие возможные решения
Потоки звуковых и видеоданных
Резюме

ЧАСТЬ II. Основные службы

ГЛАВА 6. Обнаружение объектов
Модель обнаружения объектов
Что такое объектная ссылка
Службы обнаружения объектов CORBA
Служба именования CORBA
Служба коммерции объектов CORBA
Другие способы обнаружения объектов
Использование строковых ссылок на объекты
Использование объектов-фабрик
Способы, основанные на использовании брокеров объектных запросов
Самонастройка
Выбор механизма обнаружения объектов
Сравнение службы именования и службы коммерции
Выбор объектов для публикации

ГЛАВА 7. Обмен сообщениями
Технология CORBA и обмен сообщениями
Поддержка обмена сообщениями брокерами объектных запросов
Асинхронные односторонние вызовы
Разностные синхронные вызовы
Как осуществляется обмен сообщениями
Необходимость промежуточного программного обеспечения, ориентированного на
сообщения
Существующее программное обеспечение, ориентированное на сообщения
Соответствующие службы CORBA
Служба событий CORBA
Служба уведомления CORBA
Будущие службы CORBA
Групповой обмен сообщениями
Сетевые термины
Однонаправленное и групповое вещание . ;
Рассмотрение группового вещания: программный продукт OrbixTalk
Резюме

ГЛАВА 8. Безопасность
Концепции безопасности
Аутентификация
Авторизация
Шифрование
Целостность данных
Безотказность
Права и делегирование
Требования и стратегии обеспечения безопасности в корпоративных системах
Анализ
Разработка
Реализация
Безопасность CORBA
Спецификация службы безопасности CORBA
Спецификация безопасного взаимодействия (протокол SecIOP)
Спецификация CORBA ORB-SSL
Спецификация брандмауэров CORBA
Реальные решения
Безопасность корпоративных систем на основе технологии CORBA: как это все
вместе работает
Внутренние корпоративные системы, работающие в локальной сети
Внешняя система

ЧАСТЬ III. Интеграция с базами данных и обработка транзакций

ГЛАВА 9. Долговременное хранение объектов
Общие положения
Сравнение реляционных и объектных систем управления базами данных
Проблема различия структур
Средства службы долговременнйго хранения объектов
Доступ к реляционным базам данных
Родные интерфейсы API для SQL
Открытый интерфейс доступа к базам данных
Объектно-ориентированные классы-оболочки SQL
Объектно-ориентированное отображение
Основные методы отображения
Горизонтальное разделение
Вертикальное разделение
Унификация
Сверху вниз или снизу вверх
Генерация объектно-реляционного кода
Ограничения объектно-реляционного отображения
Объектные базы данных
Группа ODMG
Непротиворечивость данных
Транзакции
Управление параллелизмом
Синхронизация данных
Резюме

ГЛАВА 10. Интеграция с базами данных
Архитектура систем
Трехзвенная архитектура
N-звенные архитектуры
Соответствующие работы консорциума OMG
Интеграция
IDL-дизайн
Прикладные объекты CORBA
Различие структур
Генерация объектно-ориентированного кода
Отношения объектов
Объектные СУБД
Служба отношений CORBA
Обработка запросов
Служба запросов CORBA
Решения для отдельных приложений
Компромиссные решения
Какое же звено выполняет основную работу?
Транзакции и параллелизм
Идентичность объекта
Управление исполнителями
Исполнители без определенного состояния
Исполнители в определенном состоянии
Адаптеры баз данных
Система на основе технологии CORBA, содержащая миллиарды объектов

ГЛАВА 11. Транзакции в среде CORBA
Сравнение двухзвенных и трехзвенных архитектур
Транзакции, управляемые клиентом, и транзакции, контролируемые сервером
Транзакции, управляемые сервером
Модель транзакций для отдельных операций
Модель фазированных транзакций
Транзакции, управляемые клиентом
Резюме

ГЛАВА 12. Обработка распределенных транзакций
Обработка транзакций
Системы обработки транзакций
Мониторы обработки транзакций
Мониторы объектных транзакций
ACID-транзакции
Управление транзакциями
Модель X/Open DTP
Служба объектных транзакций CORBA
Общие замечания
Программирование в рамках модели OTS
Транзакционные ресурсы
Восстановление
Архитектура службы OTS
Параллелизм
Сколько ACID-свойств поддерживает служба OTS
Насколько АСID-свойства вам подходят
Классификация распределенности транзакций
Современные модели транзакций
Долговременные запросы
Рабочие потоки и мультитранзакции
Саги
Вложенные транзакции
Резюме

ГЛАВА 13. Сеансы пользователей
Короткоживущие и долгоживущие транзакции
Проблемы, связанные с долгоживущими транзакциями
Управление параллелизмом
Блокировка
Упорядочение временных меток
Оптимистичное управление параллелизмом
Оптимистичное управление параллелизмом и коммерческие СУБД
Сеансы в трехзвенной среде
Транзакции, управляемые клиентами: служба OTS
Транзакции, управляемые сервером: отдельные операции
Транзакции, управляемые сервером: фазированный подход
Пример: менеджер договоров страхования
Системные требования
Проектирование
Архитектура
Реализация
Какое звено должно управлять контролем версий?
Резюме

ЧАСТЬ IV. Масштабируемость

ГЛАВА 14. Управление ресурсами сервера
Управление памятью
Классификации объектов
События жизненного цикла объектов
Модель пула исполнителей
Пример: итератор стоимости акций
Распределенное управление памятью
Выводы
Управление соединениями
Соединения и спецификация CORBA
Соединения в примере Portfolio Manager
Подходы к обеспечению масштабируемости
Выводы
Управление потоками
Многопоточная обработка: краткий обзор
Многопоточные клиенты CORBA
Многопоточные серверы CORBA
Резюме

ГЛАВА 15. Выравнивание нагрузки
Необходимость выравнивания нагрузки
Аспекты сбалансированной нагрузки
Разделение приложений
Горизонтальное разделение приложения
Вертикальное разделение приложений
Стратегии разделения
Репликация
Аспекты репликации
Механизмы репликации
Механизмы обнаружения
Механизмы миграции
Управление состоянием
Средства репликации
Репликация компонентов
Модель концентраторов
Режимы активизации базовых объектных запросов
Цена выравнивания нагрузки
Резюме

ГЛАВА 16. Отказоустойчивость
Что такое отказоустойчивость
Прагматичный подход к обеспечению отказоустойчивости
Типы ошибок
Определение сбоев
Уведомление о сбое
Отказоустойчивость и клиенты
Текущая поддержка отказоустойчивости со стороны CORBA
Поддержка со стороны брокеров объектных запросов
Отказоустойчивость и репликация
Состояние приложения: репликация серверов и баз данных
Стратегии репликации серверов приложений
Обсуждение
Пример: система на основе CORBA с высоким коэффициентом готовности
Репликация базы данных
Достигли ли мы высокой готовности
Будущая поддержка отказоустойчивости спецификацией CORBA
Резюме

ГЛАВА 17. Управление системой и ее поддержание
Управление системой
Сетевое управление
Активная система и инфрастуктура системы
Управление активной системой
Мониторинг приложения
Мониторинг производительности
Управление хранилищами
Поддержание инфраструктуры системы
Развертывание систем на основе CORBA
Изменение управления
Контроль версий в среде CORBA
Стратегии миграции в системах, использующих различные версии компонентов
Резюме

ЧАСТЬ V. Разработка систем на основе CORBA

ГЛАВА 18. Процесс разработки
CORBA и разработка программного обеспечения
Группа управления объектами
Традиционный процесс разработки программного обеспечения
Адаптация разработки программного обеспечения
Компонентная модель CORBA
Унифицированный язык моделирования
Адаптация UML
Моделирование компонентов CORBA
Характеристики компонентов
Пример
Общие рекомендации по моделированию компонентов
Различие структур — еще раз
Связывание средств моделирования с реализациями
Элементы моделирования UML
Элементы реализации
Модель и реализация
Резюме

ГЛАВА 19. Автоматизация разработки
Автоматизированное проектирование и создание программ
Генерация кода
Генерация кода на основе IDL
Генерация кода на основе моделей
Обсуждение различных подходов
Мастера процессов
Резюме

ГЛАВА 20. Заключение
Сложность остается...
...Но надежда уже видна на горизонте
Предметный указатель