Jump to content

Распределенный объект

(Перенаправлено из Распределенных объектов )
Изображение описывает связь между распределенными объектами, расположенными на разных машинах.

В вычислениях распределенных распределенные объекты [ нужна ссылка ] — это объекты (в смысле объектно-ориентированного программирования ), которые распределены по разным адресным пространствам либо в разных процессах на одном компьютере, либо даже на нескольких компьютерах, подключенных через сеть , но которые работают вместе, совместно используя данные и вызывая методы. Это часто предполагает прозрачность местоположения , когда удаленные объекты выглядят так же, как локальные объекты. Основным методом связи распределенных объектов является вызов удаленного метода , обычно путем передачи сообщений: один объект отправляет сообщение другому объекту на удаленной машине или процессе для выполнения некоторой задачи. Результаты отправляются обратно вызывающему объекту.

Распределенные объекты были популярны в конце 1990-х и начале 2000-х годов, но с тех пор вышли из моды. [1]

Этот термин также может обычно относиться к одному из расширений базовой концепции объекта, используемой в контексте распределенных вычислений, например, к реплицируемым объектам или живым распределенным объектам .

  • Реплицированные объекты — это группы программных компонентов ( реплики ), которые запускают распределенный многосторонний протокол для достижения высокой степени согласованности между их внутренними состояниями и которые отвечают на запросы скоординированным образом. Совместное обращение к группе реплик как к объекту отражает тот факт, что взаимодействие с любой из них раскрывает одно и то же внешне видимое состояние и поведение.
  • Живые распределенные объекты (или просто живые объекты ) [2] обобщить концепцию реплицируемого объекта на группы реплик, которые могут внутренне использовать любой распределенный протокол, что, возможно, приведет лишь к слабой согласованности между их локальными состояниями. Живые распределенные объекты также можно определить как работающие экземпляры распределенных многосторонних протоколов, рассматриваемые с объектно-ориентированной точки зрения как сущности, имеющие отдельную идентичность и способные инкапсулировать распределенное состояние и поведение.

См. также набор протоколов Интернета .

Локальные и распределенные объекты

[ редактировать ]

Локальные и распределенные объекты различаются во многих отношениях. [3] [4] Вот некоторые из них:

  1. Жизненный цикл: создание, миграция и удаление распределенных объектов отличается от локальных объектов.
  2. Справка: Удаленные ссылки на распределенные объекты более сложны, чем простые указатели на адреса памяти.
  3. Задержка запроса: запрос распределенного объекта на несколько порядков медленнее, чем вызов локального метода.
  4. Активация объекта. Распределенные объекты не всегда могут быть доступны для обслуживания запроса объекта в любой момент времени.
  5. Параллелизм: распределенные объекты могут выполняться параллельно.
  6. Связь: для запросов распределенных объектов доступны различные примитивы связи.
  7. Сбой. Распределенные объекты имеют гораздо больше точек сбоя, чем типичные локальные объекты.
  8. Безопасность: распространение делает их уязвимыми для атак.

Возможности RPC кросс-платформенного протокола сериализации Cap'n Proto представляют собой протокол распределенных объектов. Вызовы методов распределенных объектов могут быть выполнены (при необходимости объединены в один сетевой запрос) через ссылки/ возможности интерфейса . [5]

Распределенные объекты реализуются в Objective-C с использованием Cocoa API с классом NSConnection и вспомогательными объектами.

Распределенные объекты используются в Java RMI .

CORBA позволяет создавать распределенные системы смешанных объектов.

DCOM — это платформа для распределенных объектов на платформе Microsoft.

DDObjects — это платформа для распределенных объектов с использованием Borland Delphi.

Jt — это платформа для распределенных компонентов, использующая парадигму обмена сообщениями.

JavaSpaces — это спецификация Sun для распределенной общей памяти (пространственной).

Pyro — это фреймворк для распределенных объектов, использующий язык программирования Python .

Distributed Ruby (DRb) — это платформа для распределенных объектов, использующая язык программирования Ruby .

См. также

[ редактировать ]
  1. Микросервисы и первый закон распределенных объектов , Мартин Фаулер, 13 августа 2014 г.
  2. ^ Островски К., Бирман К., Долев Д. и Анн Дж. (2008). «Программирование с использованием живых распределенных объектов», Труды 22-й Европейской конференции по объектно-ориентированному программированию , Пафос, Кипр, 7–11 июля 2008 г., Дж. Витек, редактор, Конспекты лекций по информатике , том. 5142, Springer-Verlag, Берлин, Гейдельберг, 463-489, http://portal.acm.org/citation.cfm?id=1428508.1428536 .
  3. ^ В. Эммерих (2000) Проектирование распределенных объектов, John Wiley & Sons Ltd.
  4. ^ Сэмюэл К. Кендалл, Джим Уолдо , Энн Уолрат и Джефф Вайант. 1994. Заметки о распределенных вычислениях. Технический отчет. Sun Microsystems, Inc., Маунтин-Вью, Калифорния, США.
  5. ^ «Капитан Прото: Протокол RPC» .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 549710b2e550bf0057cf68476f1fafbc__1722232440
URL1:https://arc.ask3.ru/arc/aa/54/bc/549710b2e550bf0057cf68476f1fafbc.html
Заголовок, (Title) документа по адресу, URL1:
Distributed object - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)