亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    流行的php rpc框架詳解

    流行的php rpc框架詳解

    什么是RPC框架?

    如果用一句話概括RPC就是:遠(yuǎn)程調(diào)用框架(Remote Procedure Call

    那什么是遠(yuǎn)程調(diào)用?

    通常我們調(diào)用一個php中的方法,比如這樣一個函數(shù)方法: localAdd(10, 20),localAdd方法的具體實(shí)現(xiàn)要么是用戶自己定義的,要么是php庫函數(shù)中自帶的,也就說在localAdd方法的代碼實(shí)現(xiàn)在本地,它是一個本地調(diào)用!遠(yuǎn)程調(diào)用意思就是:被調(diào)用方法的具體實(shí)現(xiàn)不在程序運(yùn)行本地,而是在別的某個遠(yuǎn)程地方。

    遠(yuǎn)程調(diào)用原理

    比如 A (client) 調(diào)用 B (server) 提供的remoteAdd方法:

    首先A與B之間建立一個TCP連接;

    然后A把需要調(diào)用的方法名(這里是remoteAdd)以及方法參數(shù)(10, 20)序列化成字節(jié)流發(fā)送出去;

    B接受A發(fā)送過來的字節(jié)流,然后反序列化得到目標(biāo)方法名,方法參數(shù),接著執(zhí)行相應(yīng)的方法調(diào)用(可能是localAdd)并把結(jié)果30返回;

    A接受遠(yuǎn)程調(diào)用結(jié)果,輸出30。

    RPC框架就是把我剛才說的這幾點(diǎn)些細(xì)節(jié)給封裝起來,給用戶暴露簡單友好的API使用。

    遠(yuǎn)程調(diào)用的好處

    解耦:當(dāng)server需要對方法內(nèi)實(shí)現(xiàn)修改時,client完全感知不到,不用做任何變更;這種方式在跨部門,跨公司合作的時候經(jīng)常用到,并且方法的提供者我們通常稱為:服務(wù)的暴露。

    RPC與Socket有什么區(qū)別?

    通過上面的簡單闡述,好像RPC與Socket 好像啊。都是調(diào)用遠(yuǎn)程的方法,都是client/server模式,我之前也寫了一篇文章: 細(xì)說socket 那他們有啥區(qū)別呢?

    RPC(遠(yuǎn)程過程調(diào)用)采用客戶機(jī)/服務(wù)器模式實(shí)現(xiàn)兩個進(jìn)程之間相互通信。socket是RPC經(jīng)常采用的通信手段之一,RPC是在Socket的基礎(chǔ)上實(shí)現(xiàn)的,它比socket需要

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號