java面(miàn)試題庫之RMI遠程方法調用
Time:2015/01/28 15:56:27 Click:
什麼(me)是RMI ? Java遠程方法調用(RMI)是一個Java API,它執行的面(miàn)向(xiàng)對(duì)象的等價遠程過(guò)程調用(RPC)的方法,包括了直接傳輸序列化的Java類和分布式垃圾收集的支持。 遠程方法調用(RMI),也可以看作是一個遠程運行的對(duì)象上激活的方法的過(guò)程。RMI提供位置透明性,因爲用戶認爲一個方法是在本地運行的對(duì)象上執行。 RMI Tips here. 什麼(me)是RMI的體系結構的基本原理? RMI的架構最重要的原則是將(jiāng)行爲的定義和行爲的實施分别對(duì)待。 RMI允許定義的行爲和實現行爲保持獨立,并在獨立的JVM中運行的代碼。 |
|
|
80. RMI的體系結構層是什麼(me)? RMI的結構主要分爲以下幾層: 樁(Stub)和框架(Skeleton)層:該層位于開(kāi)發(fā)者視圖的下面(miàn)。該層是負責攔截客戶端請求接口的方法并重定向(xiàng)這(zhè)些請求到遠程RMI服務上。 遠程引用層:架構的第二層是處理從客戶端到服務器的遠程對(duì)象引用的解析。該層解析并管理從客戶端到遠程服務對(duì)象的引用。該連接是一對(duì)一(單播)連接的。 傳輸層:該層主要負責連接參與服務的兩(liǎng)個JVM。它基于通過(guò)網絡連接的機子的TCP/IP,提供了基本的連通性,以及一些防火牆的滲透策略。
在RMI中遠程接口的作用是什麼(me)? 遠程接口用于識别那些不是來自本地機子接口但可以被(bèi)調用的方法。所有對(duì)象都(dōu)是必須直接或間接實現該接口的遠程對(duì)象。實現該遠程接口之前應該聲明其遠程接口,爲每個遠程對(duì)象定義構造方法,并在所有遠程接口中爲每個遠程方法提供實現。 |
|
|
java.rmi.Naming 類扮演的角色 ?
java.rmi.Naming類提供了存儲和獲取已注冊的遠程對(duì)象. Naming類中的每個方法都(dōu)需要一個URL格式的String作爲參數的名稱. RMI中的綁定是什麼(me)意思 ?
綁定是關聯或注冊一個遠程對(duì)象的名字的過(guò)程, 這(zhè)個名字可以在以後(hòu)用到, 用于查找與它綁定的遠程對(duì)象. 遠程對(duì)象可以通過(guò)Naming類中的bind或rebind方法與一個名字相關聯. Naming 類中的bind與rebind方法的區别 ?
bind方法的綁定主要用于將(jiāng)特定的名字綁定到一個遠程對(duì)象, 但rebind方法的綁定用于將(jiāng)特定的名字重新綁定到一個新的遠程對(duì)象. 如果這(zhè)個名字已經(jīng)綁定過(guò)了, 使用rebind這(zhè)個綁定會(huì)被(bèi)替換. |
|
運行RMI 程序的步驟?
爲了使RMI程序正常運行需要以下步驟:
編譯所有源文件.
用rmic生成(chéng)stub.
啓動rmiregistry.
啓動RMIServer.
運行客戶端程序.
RMI中stub的角色 ?
遠程對(duì)象的stub作爲遠程對(duì)象在本地程序中的表示或代理. 調用者調用本地stub的一個方法, 這(zhè)個方法會(huì)在遠程對(duì)象上執行.當一個stub的方法被(bèi)調用時(shí), 它經(jīng)曆了以下步驟: |
|
什麼(me)是DGC?它是如何工作的? DGC代表的是分布式垃圾收集。遠程方法調用(RMI)使用的是DGC自動垃圾收集機制。由于RMI涉及到跨JVM的遠程引用,垃圾回收就(jiù)會(huì)相當困難。DGC使用相關的計數算法爲遠程對(duì)象提供自動存儲管理。 在RMI中使用RMISecurityManager的目的是什麼(me)? 在RMI應用程序中可以使用RMISecurityManager提供安全管理器來下載代碼。如果安全管理器沒(méi)有設置好(hǎo),RMI的類加載器不會(huì)從遠程端下載任何類。 解釋編組和解組。 當一個應用程序要通過(guò)網絡來傳送内存對(duì)象到另一台主機,或者保留它到存儲器,内存表達法會(huì)將(jiāng)其轉換到合适的格式。這(zhè)個過(guò)程就(jiù)叫(jiào)做編組,而恢複操作就(jiù)叫(jiào)解組。 |
|
解釋序列化和反序列化。 Java提供了一個機制,是指一個對(duì)象可以被(bèi)表示爲字節序列,包括對(duì)象的數據,以及對(duì)象類型的信息和存儲在對(duì)象中的數據類型。因此,序列化可以看做是平面(miàn)化對(duì)象爲了存儲到磁盤中,方便後(hòu)面(miàn)讀取和重新配置的一種(zhǒng)方式。反序列化是一種(zhǒng)從平面(miàn)化狀态到活躍狀态的一種(zhǒng)轉換對(duì)象的逆過(guò)程。 |