Фрагментированный объект - Fragmented object
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
В вычислениях фрагментированные объекты действительно распространены объекты. Это новый принцип дизайна, расширяющий традиционную концепцию распределения на основе заглушек.
В отличие от распределенные объекты, они физически распределены и инкапсулируют распределение в самом объекте. Части объекта - именованные фрагменты - могут существовать на разных узлах и обеспечивать интерфейс объекта. Каждый клиент, обращающийся к фрагментированному объекту по его уникальному идентификатору, предполагает наличие локального фрагмента. Фрагментированные объекты могут действовать как RPC на базе инфраструктуры или (кэширующий) смарт-прокси. Следовательно, клиенты не могут различить доступ к локальному объекту, локальной заглушке или локальному фрагменту. Полная прозрачность достигается следующими характеристиками фрагментированных объектов.
Произвольное внутреннее общение
Для внутренней связи между фрагментами могут быть выбраны произвольные протоколы. Например, это позволяет скрыть протоколы реального времени (например, RTP для потоковой передачи мультимедиа) за стандартным CORBA интерфейс.
Произвольная внутренняя структура
Внутренняя структура фрагментированного объекта определяется разработчиком / разработчиком объекта. Он может быть клиент-серверным, иерархическим, пиринговый и другие. Таким образом обеспечивается обратная совместимость с распределением на основе заглушек.
Произвольная внутренняя конфигурация
Поскольку и распределение состояния, и функциональность скрыты за интерфейсом объекта, их соответствующее распределение по фрагментам также является произвольным. Кроме того, приложение, использующее фрагментированный объект, также может допускать изменение распределений, которое достигается путем обмена фрагментом на одном или нескольких хостах. Эта процедура может быть запущена либо пользователем, который изменяет свойства объекта, либо самим фрагментированным объектом (то есть совокупностью его фрагментов), например, когда считается, что какой-то фрагмент отказал. Конечно, запрос на обмен может вызвать одно или несколько других внутренних изменений. Разработчик объекта может переносить состояние и функциональность по фрагментам, предоставляя различные реализации фрагментов. Они динамически изменяют внутреннюю часть фрагментированных объектов. Достигается гибкое внутреннее разделение, обеспечивающее также прозрачную отказоустойчивую репликацию.
Проекты
- Aspectix - Группа Aspectix работает над несколькими проектами, промежуточное ПО архитектура, адаптивные приложения, ориентированные на качество обслуживания, Отказоустойчивость, аспектно-ориентированное программирование и автоматизированное преобразование исходного кода.
- FORMI - FORMI является продолжением Java RMI.
- Globe - в этом проекте рассматривается мощная объединяющая парадигма для построения крупномасштабных распределенных систем на обширной территории: распределенные общие объекты.
- SOS - объектно-ориентированная операционная система SOMIW.
внешние ссылки
использованная литература
- Структура и инкапсуляция в распределенных системах: принцип прокси
- Фрагментированные объекты для распределенных абстракций
- Globe: глобальная распределенная система
- Интеграция фрагментированных объектов в среду CORBA
- FORMI: расширение RMI для адаптивных приложений
- FORMI: интеграция адаптивных фрагментированных объектов в Java RMI