Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
RMI IIOP (читается как "RMI over IIOP") обозначает интерфейс Java Remote Method Invocation (RMI) поверх протокола Internet Inter Orb Protocol (IIOP), который предоставляет возможности распределенных вычислений Common Object Request Broker Architecture (CORBA) платформе Java. Изначально он был основан на двух спецификациях: сопоставлении языка Java с OMG IDL и CORBA/IIOP 2.3.1. Благодаря функциям, унаследованным от CORBA, программные компоненты, работающие совместно, могут быть написаны на разных языках программирования и выполняться на различных компьютерах. Иными словами, он поддерживает разнородные платформы и позволяет осуществлять удаленные вызовы процедур для выполнения подпрограмм на другом компьютере в соответствии с определением RMI.
RMI IIOP (read as "RMI over IIOP") denotes the Java Remote Method Invocation (RMI) interface over the Internet Inter Orb Protocol (IIOP), which delivers Common Object Request Broker Architecture (CORBA) distributed computing capabilities to the Java platform. It was initially based on two specifications: the Java Language Mapping to OMG IDL, and CORBA/IIOP 2.3.1. With features inherited from CORBA, software components that work together can be written in multiple computer languages and run on multiple computers. In other words, it supports multiple platforms and can make remote procedure calls to execute, subroutines on another computer as defined by RMI.
История
Спецификация Java RMI IIOP была разработана для упрощения разработки приложений CORBA с сохранением всех основных преимуществ. Она была создана компаниями Sun Microsystems и IBM, объединяя возможности технологии Java RMI и технологии CORBA.
The Java RMI IIOP specification was created to simplify the development of CORBA applications, while preserving all major benefits. It was developed by Sun Microsystems and IBM, combining features of Java RMI technology with features of CORBA technology.
Спецификация
RMI IIOP использует генерируемый код для удаленных объектов и не требует дополнительных классов для нетривиальных данных, в отличие от CORBA. Это обеспечивает меньшую сложность и меньший размер. И CORBA, и RMI IIOP используют общий стандарт межорбитального взаимодействия – протокол General Inter-ORB Protocol. RMI IIOP в значительной степени основан на концепции "Объект по значению", которая служит контейнером или прямой заменой для структур, объединений, последовательностей, массивов и строк CORBA. Отдельное описание интерфейса IDL не требуется. Вместо этого определения структур данных обнаруживаются автоматически посредством механизмов рефлексии. Однако возможно генерировать определения IDL для используемых структур данных RMI IIOP и применять их для более тонкой настройки взаимодействия между RMI IIOP и партнерами CORBA. В последних версиях RMI IIOP слуги (servants) выводятся из стандартного класса Servant. Следовательно, их можно вручную подключить к CORBA ORB, используя один или несколько портативных адаптеров объектов (Portable Object Adapters), портативных перехватчиков (Portable Interceptors), служб именования CORBA, а также другие стандартные возможности CORBA.
RMI IIOP uses generated code for remote objects and does not require supplementary classes for non trivial data, unlike CORBA. This results in less complexity and a smaller footprint. Both CORBA and RMI IIOP utilize the General Inter ORB Protocol communication standard. RMI IIOP is largely based on the Object by Value concept that serves as a container or direct replacement for CORBA structures, unions, sequences, arrays and strings. No separate IDL is necessary. Instead, the data structure definitions are discovered automatically via reflection mechanisms. However, it is possible to generate the IDL definitions for the involved RMI IIOP data structures and use these definitions to exercise finer control between RMI IIOP and CORBA communicating partners. Recent versions of RMI IIOP derive their servants from the standard Servant class. Hence, it is possible to connect them to a CORBA ORB manually, involving one or more of Portable Object Adapters, Portable Interceptors, CORBA naming services, along with other standard CORBA features.