Преглед архитектуре РМИ

У дистрибуираној архитектури апликација увек је потреба за комуникацијом између две различите апликације. У Јава-базираним апликацијама једна апликација комуницира с другом удаљеном / другом апликацијом која се покреће негдје друго користећи механизам који се зове РМИ архитектура.

РМИ означава удаљени позив. То је АПИ који пружа Јава, а објекту који борави у једној ЈВМ (Јава Виртуал Мацхине) омогућава приступ објекту који ради на другом ЈВМ-у или га позива. Други ЈВМ може бити на истој или удаљеној машини. Ово је занимљива карактеристика јер у стварним временима апликације за Јава апликације постају врло једноставне за међусобно комуницирање без икаквог спољног механизма комуникације. Такође, увек је потребна сигурна комуникација између апликација заснована на дистрибуираној архитектури апликација.

РМИ Десигн

Пре него што пређемо у детаљну архитектуру, разумећемо основни дизајн РМИ архитектуре.

  • РМИ АПИ је доступан у пакету јава.рми. Уведимо два термина за разумевање архитектуре РМИ дизајна. Прво је клијент; ЈВМ који ће позвати удаљени објект, а други је сервер; ЈВМ који садржи удаљени објект. Дакле, клијент ће позвати сервер, у овом случају на објект, за позивање метода.
  • Сервер ће потом вратити референцу објекта клијенту. Овде је и објекат, тј. Локални и даљински ће се појавити као локални објект на серверу. Неће бити разлике између њих две. Синтакса метода оба објекта је такође иста. Стога, ЈВМ послужитеља дјелује као уобичајени ЈВМ без сазнања о било којем објекту било да је локални или даљински.
  • Исти објект може бити и сервер и клијент. Добија се референца за удаљене објекте и користи се као да је то локални објект. РМИ инфраструктура одговорна је за проналажење удаљеног објекта, пресретање позива методе и даљинску обраду удаљеног захтјева. Клијент позива методе на објект тек након што добије референцу на удаљени објект.

РМИ Арцхитецтуре

Испод је дијаграм РМИ архитектуре на једноставан начин. На Интернету ћете пронаћи разне облике исте архитектуре, али ми имамо једноставан који ће вам помоћи да то боље објасните.

Започнимо повезивањем тачака из перспективе дизајна са архитектонским дијаграмом.

Клијентска апликација и сервер апликација су одговарајући ЈВМ-ови клијентске машине и серверске машине. У РМИ апликацији пишемо два програма; клијентски програм који се налази на клијенту и серверски програм који се налази на серверу.

Слој апликације:

Овај слој су стварни системи, тј. Клијент и сервер који су укључени у комуникацију. Јава програм на страни клијента комуницира с јава програмом на страни сервера.

Стуб:

Од уводног дизајна, имамо клијентске објекте; У РМИ архитектури је познат као Стуб. То је објект који се налази на клијентској машини и делује као проки за удаљени објект. То је попут пролаза за програм клијента.

Стуб има исте методе као и удаљени објект. Када клијент позива објект стуб-а, убода прослеђује овај захтев удаљеном објекту (скелету) преко РМИ инфраструктуре која се затим извршава на серверу.

Стуб изводи следеће догађаје: -

  1. Иницира везу са даљинским ЈВМ,
  2. Пише и шаље (Марсхалс) параметре на удаљени ЈВМ,
  3. Чека на резултат,
  4. Чита (Одустани) враћени резултат,
  5. Добивени резултат проследите позиваоцу.

Скелетон:

Објект сервера који се налази у серверској машини познат је под називом Скелетон. Стуб комуницира са серверском апликацијом уз помоћ средњег објекта Скелетон.

Одговорност објекта костура је да пошаље параметре у имплементацију методе и пошаље повратне вредности натраг клијенту.

Скелетон Изводи следеће догађаје: -

  1. Чита параметар који је послао клијент,
  2. Позива методу на стварни удаљени објект,
  3. Пренесите / проследите резултат позиваоцу.

Слој стуба / скелета:

  • Слој Стуб / Скелетон одговоран је за пресретање позива које је упутио клијент и за преусмјеравање тих позива на удаљени објект. Овај слој се такође назива и Проки Лаиер. Стуб и Скелетон су проки клијента и сервера. Објекти Стуб и Скелетон су попут интерфејса између апликације и остатка РМИ система.
  • Сврха овог слоја је пренос података у удаљени референтни слој помоћу објектне сериализације. Овај процес претварања података / објекта у бајт ток познат је под називом Марсхаллинг, а обрнуто је познат и као Унмарсхаллинг. Марсхалинг се изводи када се објект тражи од сервера, а Унмарсхаллинг се изводи када се од послужитеља прими референца података / објекта.

Даљински референтни слој:

  • Проки слој је повезан са РМИ механизмом преко удаљеног референтног слоја. Овај слој је одговоран за комуникацију и пренос објеката између клијента и сервера. Семантика позивања РМИ везе је дефинисана и подржана у овом слоју.
  • Удаљени референтни слој одговоран је за одржавање сесије током позива методе. тј. Управља референцама које је клијент упутио на објект удаљеног послужитеља. Овај слој је такође одговоран за руковање дуплираним објектима.

Транспорт Лаиер:

Транспортни слој одговоран је за успостављање комуникације између двије машине. Овај слој користи стандардни ТЦП / ИП протокол за повезивање. Стварни транспорт података врши се преко овог слоја. Овај слој је део слоја удаљеног референцирања.

Закључак

  • Даљински позив (РМИ) је врло користан АПИ који се пружа у ЈАВА и који помаже у комуникацији између два различита ЈВМ-а. Омогућује објекту да изазове методу на објекту који се налази у другом адресном простору.
  • Омогућава сигуран начин да апликације међусобно комуницирају. Ову функцију постиже помоћу концепата Стуб (Клијент позива објект) и Скелетон (Удаљени објект који борави на серверу).
  • РМИ се користи за изградњу дистрибуираних апликација. Он чува врсту сигурности. РМИ архитектура минимизира сложеност апликације у дистрибуираној архитектури.

Препоручени чланци

Ово је био водич за РМИ архитектуру. Овдје детаљно расправљамо о РМИ дизајну и архитектури с одговарајућим блок дијаграмом. Можете и да прођете кроз друге наше предложене чланке да бисте сазнали више -

  1. Архитектура складишта података
  2. Шта је ТЦП протокол?
  3. Шта је Десктоп софтвер?
  4. ЦЦНА питања за интервју

Категорија: