RMI-IIOP (читается как «RMI поверх IIOP») обозначает интерфейс удаленного вызова методов Java (RMI) через межброкерный протокол Интернета (IIOP), который предоставляет возможности распределенных вычислений Common Object Request Broker Architecture (CORBA) для платформы Java. Первоначально он был основан на двух спецификациях: маппинг языка Java на OMG IDL и CORBA / IIOP 2.3.1[1].

Благодаря функциям, унаследованным от CORBA, программные компоненты, которые работают вместе, могут быть написаны на нескольких языках и работать на нескольких компьютерах. Другими словами, он поддерживает несколько платформ и может выполнять удаленные вызовы процедур для выполнения подпрограмм на другом компьютере, как определено RMI.

История править

Спецификация Java RMI-IIOP была создана для упрощения разработки приложений CORBA при сохранении всех основных преимуществ этого подхода. Она был разработана компаниями Sun Microsystems и IBM и сочетает в себе функции технологии Java RMI с функциями технологии CORBA.

Техническое описание править

RMI-IIOP использует сгенерированный код для удаленных объектов и не требует дополнительных классов для нетривиальных данных, в отличие от CORBA. Это снижает сложность и занимает меньше места. И CORBA, и RMI-IIOP используют стандарт связи General Inter-ORB Protocol.

RMI-IIOP в значительной степени основан на концепции объекта по значению, который служит контейнером или прямой заменой структур CORBA, объединений, последовательностей, массивов и строк. Никакого отдельного IDL не требуется[2]. Вместо этого определения структур данных обнаруживаются автоматически с помощью механизмов рефлексии. Однако можно сгенерировать определения IDL для задействованных структур данных RMI-IIOP и использовать эти определения для более точного управления между партнерами по обмену данными RMI-IIOP и CORBA.

Последние версии RMI-IIOP являются производными от стандартного класса Servant. Следовательно, их можно подключить к CORBA ORB вручную, используя один или несколько переносимых объектных адаптеров, переносных перехватчиков, службы именования CORBA, а также другие стандартные функции CORBA.

Ссылки править

Примечания править

  1. Java SE Core Technologies - CORBA / RMI-IIOP. — «In addition to Java IDL, Java SE also supports Java Remote Method Invocation over Internet Inter-ORB Protocol technology ("RMI-IIOP") This technology provides the ability to write CORBA applications for the Java platform without learning CORBA Interface Definition Language (IDL). RMI over IIOP is based on two specifications of the Object Management Group: Java Language Mapping to OMG IDL Specification, and CORBA/IIOP 2.3.1 Specification, formal/99-10-07.» Дата обращения: 24 октября 2021. Архивировано 29 ноября 2017 года.
  2. RMI-IIOP Programmer's Guide: What is RMI-IIOP? RMI. http://download.oracle.com/:+ORACLE. — «With RMI you can write distributed programs in the Java programming language. RMI is easy to use, you don't need to learn a separate interface definition language (IDL), and you get Java's inherent "write once, run anywhere" benefit. Clients, remote interfaces, and servers are written entirely in Java. RMI uses the Java Remote Method Protocol (JRMP) for remote Java object communication.» Дата обращения: 24 октября 2021. Архивировано из оригинала 25 февраля 2011 года.