Система мгновенного обмена сообщениями
- 1 year ago
- 0
- 0
Обмен сообщениями в информатике — один из подходов реализации взаимодействия компонентов и систем, используемый в параллельных вычислениях , объектно-ориентированном программировании , также — одна из форм межпроцессного взаимодействия в операционных системах , в микроядерных операционных системах подход используется для обмена информацией между одним из ядер и одним или более исполняющих блоков.
Распределённые системы доступа к объектам и удалённого вызова методов, вида ONC RPC , CORBA , RMI , DCOM , SOAP , .Net_Remoting , QNX Neutrino RTOS , , D-Bus и им подобные являются системами обмена сообщениями. Широкое применение подходов с обменом сообщениями также свойственно высокопроизводительным вычислениям , в частности, на нём основан интерфейс передачи сообщений MPI . В классе связующего программного обеспечения выделяется особая группа — промежуточное программное обеспечение, ориентированное на обработку сообщений , базирующееся на данном подходе.
Системы обмена сообщениями являются закрытыми, так как их абстракция прячет все изменения состояний, которые могут быть использованы в реализации отсылки сообщений.
Языки программирования, базирующиеся на этой модели, обычно определяют передачу сообщения, как посылку (обычно асинхронную; являющуюся копией) элемента данных конечному получателю ( , процессу , потоку , сокету и так далее). Концепция сообщения является высокоуровневой версией датаграмм , за исключением того, что сообщения могут быть больше по размерам, чем пакет, и могут быть сделаны надёжными, стойкими, безопасными и при необходимости могут быть охвачены механизмом транзакций .
Сообщения часто используются для межпроцессного взаимодействия ; другой широкораспространённой областью применения являются потоки и конвейеры , в которых информация посылается как последовательность простейших элементов данных (высокоуровневая версия ).
В терминах некоторых объектно-ориентированных языков программирования сообщение — это единственный путь передать управление объекту. Если объект должен «отвечать» на это сообщение, то у него должен быть метод , соответствующий данному сообщению.
В чистом объектно-ориентированном программировании обмен сообщениями реализуется только с помощью динамических вызовов.
Посылка одного и того же сообщения объекту дважды обычно вызывает и двойное применение объектом метода. Сообщения называются одинаковыми, если их имена и аргументы одинаковы.
Объекты могут посылать сообщения другим объектам, используя свои методы.
Обмен сообщениями приводит к чрезвычайно позднему связыванию ( англ. extreme late binding ).
Алан Кэй утверждает , что обмен сообщениями между объектами — это концепция более важная, чем сами объекты, хотя люди часто это не понимают и уделяют слишком много внимания самим объектам и недостаточно — сообщениям, которыми они обмениваются.
Некоторые языки поддерживают пересылку (делегирование) вызовов методов от одного объекта другому, если он не имеет метода для обработки сообщения, но «знает» другой объект, который имеет.
{{
cite conference
}}
:
Неизвестный параметр
|coauthors=
игнорируется (
|author=
предлагается) (
справка
)
{{
cite conference
}}
:
Неизвестный параметр
|coauthors=
игнорируется (
|author=
предлагается) (
справка
)
{{
cite conference
}}
:
Неизвестный параметр
|coauthors=
игнорируется (
|author=
предлагается) (
справка
)