當(dāng)前位置:
首頁 >
RPC远程过程
發(fā)布時間:2025/7/14
17
豆豆
RPC遠(yuǎn)程過程 (一)RPC的定義:RPC(Remote Procedure Call)—遠(yuǎn)程過程調(diào)用,它是一種通過網(wǎng)絡(luò)從遠(yuǎn)程計算機(jī)程序上請求服務(wù),而不需要了解底層網(wǎng)絡(luò)技術(shù)的協(xié)議。RPC協(xié)議假定某些傳輸協(xié)議的存在,如TCP或UDP,為通信程序之間攜帶信息數(shù)據(jù)。在OSI網(wǎng)絡(luò)通信模型中,RPC跨越了傳輸層和應(yīng)用層。RPC使得開發(fā)包括網(wǎng)絡(luò)分布式多程序在內(nèi)的應(yīng)用程序更加容易。 RPC采用客戶機(jī)/服務(wù)器模式。請求程序就是一個客戶機(jī),而服務(wù)提供程序就是一個服務(wù)器。首先,客戶機(jī)調(diào)用進(jìn)程發(fā)送一個有進(jìn)程參數(shù)的調(diào)用信息到服務(wù)進(jìn)程,然后等待應(yīng)答信息。在服務(wù)器端,進(jìn)程保持睡眠狀態(tài)直到調(diào)用信息到達(dá)為止。當(dāng)一個調(diào)用信息到達(dá),服務(wù)器獲得進(jìn)程參數(shù),計算結(jié)果,發(fā)送答復(fù)信息,然后等待下一個調(diào)用信息,最后,客戶端調(diào)用進(jìn)程接收答復(fù)信息,獲得進(jìn)程結(jié)果,然后調(diào)用執(zhí)行繼續(xù)進(jìn)行。 有多種 RPC模式和執(zhí)行。最初由 Sun 公司提出。IETF ONC 憲章重新修訂了 Sun 版本,使得 ONC RPC 協(xié)議成為 IETF 標(biāo)準(zhǔn)協(xié)議。現(xiàn)在使用最普遍的模式和執(zhí)行是開放式軟件基礎(chǔ)的分布式計算環(huán)境(DCE)。 (二)RPC的原理: 運(yùn)行時,一次客戶機(jī)對服務(wù)器的RPC調(diào)用,其內(nèi)部操作大致有如下十步: 1.調(diào)用客戶端句柄;執(zhí)行傳送參數(shù) 2.調(diào)用本地系統(tǒng)內(nèi)核發(fā)送網(wǎng)絡(luò)消息 3.消息傳送到遠(yuǎn)程主機(jī) 4.服務(wù)器句柄得到消息并取得參數(shù) 5.執(zhí)行遠(yuǎn)程過程 6.執(zhí)行的過程將結(jié)果返回服務(wù)器句柄 7.服務(wù)器句柄返回結(jié)果,調(diào)用遠(yuǎn)程系統(tǒng)內(nèi)核 8.消息傳回本地主機(jī) 9.客戶句柄由內(nèi)核接收消息 10.客戶接收句柄返回的數(shù)據(jù) posted on 2018-06-11 14:13 賴攀 閱讀(...) 評論(...) 編輯 收藏
轉(zhuǎn)載于:https://www.cnblogs.com/tjlp/p/9166810.html
總結(jié)
- 上一篇: Java核心知识点 --- 线程中如何创
- 下一篇: sqlserver 查找数据混排