RMI over IIOP Светлин Наков www.nakov.com Кратък технически обзор Софийски Университет “ Св. Климент Охридски ”
<ul><li>RMI  е съкращение от  Remote Method Invocation </li></ul><ul><li>Представлява  Java  технология за разработка на р...
Протоколът  IIOP <ul><li>IIOP  е съкращение от Internet Inter-ORB Protocol </li></ul><ul><li>Позволява програми написани н...
Нуждата от  RMI over IIOP <ul><li>Технологията  RMI </li></ul><ul><ul><li>е лесна за употреба, но специфична за  Java </li...
Протоколът  RMI-IIOP <ul><li>Разработен е съвместно от  IBM  и  Sun </li></ul><ul><li>Дава възможност  RMI  обекти да изпо...
RMI-IIOP  в  Java 2  платформата <ul><li>Позволява  CORBA  клиенти да извикват  Java RMI  сървъри </li></ul><ul><li>Позвол...
RMI-IIOP  или  RMI (JRMP) <ul><li>Предимствата на  RMI-IIOP : </li></ul><ul><ul><li>Позволява взаимодействие с други езици...
RMI  и  CORBA –  взаимодействие <ul><li>Преди въвеждането на  RMI-IIOP </li></ul>√ X CORBA (IIOP) X √ RMI   (JRMP) CORBA (...
RMI  и  CORBA –  взаимодействие <ul><li>След въвеждането на  RMI-IIOP </li></ul><ul><li>... взаимодействието е много по-бо...
Създаването на  RMI-IIOP <ul><li>Нуждата от съвместимост между  RMI  и  CORBA  стандартите е осъзната от  Java  и  CORBA  ...
Разработка на  Java  приложения с  RMI-IIOP
Разработка на  C++  приложения с  RMI-IIOP
<ul><li>Преодоляване на различията между  RMI  и  CORBA  след въвеждането на  RMI-IIOP </li></ul><ul><ul><li>Java RMI  инт...
Използвана литература <ul><li>Wollrath A. and Waldo J., The Java Tutorial: RMI –  http://java.sun.com/docs/books/tutorial/...
Използвана литература <ul><li>Programming WebLogic RMI over IIOP –  http://edocs.bea.com/wls/docs81/rmi_iiop/index.html </...
Дискусия <ul><li>Въпроси ? </li></ul>
Upcoming SlideShare
Loading in...5
×

Nakov - RMI-IIOP Protocol

1,436

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,436
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
25
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Nakov - RMI-IIOP Protocol

    1. 1. RMI over IIOP Светлин Наков www.nakov.com Кратък технически обзор Софийски Университет “ Св. Климент Охридски ”
    2. 2. <ul><li>RMI е съкращение от Remote Method Invocation </li></ul><ul><li>Представлява Java технология за разработка на разпределени приложения </li></ul><ul><li>Позволява обекти от една JVM да използват обекти от други (отдалечени) JVM </li></ul><ul><li>Използват се обикновени Java интерфейси </li></ul><ul><li>Комуникацията е прозрачна за програмиста </li></ul><ul><li>С отдалечените обекти се работи също както с обикновени Java обекти – разликата е само в начина на инстанциране </li></ul><ul><li>Поддържа се distributed garbage collector </li></ul>Технологията RMI
    3. 3. Протоколът IIOP <ul><li>IIOP е съкращение от Internet Inter-ORB Protocol </li></ul><ul><li>Позволява програми написани на различни езици да комуникират по TCP/IP мрежи чрез отдалечено извикване на методи </li></ul><ul><li>Разработен е от Object Management Group (OMG) </li></ul><ul><li>Основен преносен протокол в Common Object Request Broker Architecture ( CORBA ) стандарта </li></ul><ul><li>Чрез него си комуникират ORB -тата на CORBA -базирани разпределени приложения </li></ul><ul><li>Използва за транспортен слой TCP </li></ul><ul><li>Предава заявките и отговорите в бинарен вид </li></ul>
    4. 4. Нуждата от RMI over IIOP <ul><li>Технологията RMI </li></ul><ul><ul><li>е лесна за употреба, но специфична за Java </li></ul></ul><ul><ul><li>използва за преносен слой протокола JMRP ( Java Remote Message Protocol) </li></ul></ul><ul><li>Технологията CORBA </li></ul><ul><ul><li>e платформено и езиково независима, но e сложна за използване </li></ul></ul><ul><ul><li>използва за преносен слой протокола IIOP </li></ul></ul><ul><li>Целта на RMI over IIOP (RMI-IIOP) e </li></ul><ul><ul><li>да комбинира леснотата на работа с RMI и междуплатформената преносимост на CORBA </li></ul></ul><ul><ul><li>да осигури на RMI взаимодействие с CORBA </li></ul></ul>
    5. 5. Протоколът RMI-IIOP <ul><li>Разработен е съвместно от IBM и Sun </li></ul><ul><li>Дава възможност RMI обекти да използват IIOP протокола за да комуникират с CORBA обекти и помежду си </li></ul><ul><li>Изпълнява пълната функционалност на CORBA Object Request Broker-ите (ORB) </li></ul><ul><li>Дава възможност на Java 2 програмистите да пишат CORBA приложения без да разбират от IDL </li></ul><ul><li>Позволява пренасяне на сериализирани обекти между компонентите на разпределени Java приложения, както при RMI </li></ul>
    6. 6. RMI-IIOP в Java 2 платформата <ul><li>Позволява CORBA клиенти да извикват Java RMI сървъри </li></ul><ul><li>Позволява Java RMI клиенти да извикват CORBA сървъри (когато интерфейсите им са съвместими) </li></ul><ul><li>RMI обектите могат да комуникират по между си както по JRMP , така и по IIOP </li></ul><ul><li>Всеки CORBA клиент може да ползва RMI сървър по RMI-IIOP , но обратно не винаги е възможно </li></ul><ul><li>Компилаторът rmic има специална опция, която указва дали да се генерират IIOP или JRMP stubs и skeletons </li></ul>
    7. 7. RMI-IIOP или RMI (JRMP) <ul><li>Предимствата на RMI-IIOP : </li></ul><ul><ul><li>Позволява взаимодействие с други езици за програмиране и платформи </li></ul></ul><ul><ul><li>Поддържа автоматично предаване на контексти за транзакция и за сигурност </li></ul></ul><ul><li>Предимства на RMI (JRMP) : </li></ul><ul><ul><li>Поддържа distributed garbage collection </li></ul></ul><ul><ul><li>След извличане на обект от naming услугата се извършва typecasting, а не narrow </li></ul></ul><ul><ul><li>Константите в отдалечения интерфейс могат да бъдат не само от примитивни типове </li></ul></ul>
    8. 8. RMI и CORBA – взаимодействие <ul><li>Преди въвеждането на RMI-IIOP </li></ul>√ X CORBA (IIOP) X √ RMI (JRMP) CORBA (IIOP) RMI (JRMP) Server Client JRMP RMI Server RMI Client IIOP CORBA Server CORBA Client
    9. 9. RMI и CORBA – взаимодействие <ul><li>След въвеждането на RMI-IIOP </li></ul><ul><li>... взаимодействието е много по-богато </li></ul>RMI Client RMI Server RMI-IIOP Client RMI-IIOP Server CORBA Client CORBA Server
    10. 10. Създаването на RMI-IIOP <ul><li>Нуждата от съвместимост между RMI и CORBA стандартите е осъзната от Java и CORBA общностите </li></ul><ul><li>За установяване на съвместимост между RMI и CORBA се налагат някои промени: </li></ul><ul><ul><li>Objects by value – позволява пренасяне на сложни структури от данни (всички сериализируеми Java обекти) през IIOP </li></ul></ul><ul><ul><li>Java-to-IDL mapping – нова, променена версия на спецификацията </li></ul></ul><ul><li>Създава се стандарта CORBA 2.3, в който са нанесени необходимите промени </li></ul>
    11. 11. Разработка на Java приложения с RMI-IIOP
    12. 12. Разработка на C++ приложения с RMI-IIOP
    13. 13. <ul><li>Преодоляване на различията между RMI и CORBA след въвеждането на RMI-IIOP </li></ul><ul><ul><li>Java RMI интерфейсите не поддържат всичките възможности на IDL (не всеки IDL има аналог в RMI ) </li></ul></ul><ul><ul><li>CORBA не поддържа distributed garbage collection </li></ul></ul><ul><ul><li>Security моделите на RMI и CORBA се различават </li></ul></ul><ul><li>Интеграция на IIOP с .NET Remoting </li></ul><ul><ul><li>IIOP.NET свързва .NET Remoting с CORBA и RMI аналогично на RMI-IIOP </li></ul></ul><ul><ul><li>Borland Janeva – имплементира IIOP канал в .NET Remoting </li></ul></ul>Перспективи пред IIOP и RMI-IIOP
    14. 14. Използвана литература <ul><li>Wollrath A. and Waldo J., The Java Tutorial: RMI – http://java.sun.com/docs/books/tutorial/rmi/ </li></ul><ul><li>TechTarget Network – IIOP Glossary Definition – http://searchnetworking.techtarget.com/gDefinition/0,294236,sid7_gci214019,00.html </li></ul><ul><li>Java RMI-IIOP Documentation – http://java.sun.com/j2se/1.3/docs/guide/rmi-iiop/ </li></ul><ul><li>Hagge D., RMI-IIOP in the Enterprise – http://www-106.ibm.com/developerworks/java/library/j-rmi-iiop/ </li></ul><ul><li>Andoh A., Nash S., RMI over IIOP – http://www.javaworld.com/javaworld/jw-12-1999/jw-12-iiop.html </li></ul>
    15. 15. Използвана литература <ul><li>Programming WebLogic RMI over IIOP – http://edocs.bea.com/wls/docs81/rmi_iiop/index.html </li></ul><ul><li>Ergul S., Java Primer: RMI Over IIOP – When the Java and CORBA Worlds Collide – http://www.adtmag.com/java/articleold.asp?id=687 </li></ul><ul><li>IIOP.NET – http://iiop-net.sourceforge.net/ </li></ul><ul><li>Borland Janeva – http://www.borland.com/janeva/ </li></ul>
    16. 16. Дискусия <ul><li>Въпроси ? </li></ul>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×