真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎樣實現(xiàn)簡單的RPC框架-創(chuàng)新互聯(lián)

怎樣實現(xiàn)簡單的RPC框架,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

創(chuàng)新互聯(lián)主要從事做網(wǎng)站、網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)代縣,10年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792

1.定義上下文對象

在RpcContext對象中增加一個map類型的參數(shù)對象,可以存放任意擴展的參數(shù)。

怎樣實現(xiàn)簡單的RPC框架

2.RPC請求對象中增加上下文參數(shù)

RpcRequest增加如下字段,用于服務(wù)端調(diào)用。

怎樣實現(xiàn)簡單的RPC框架

3.RpcInvocation接口中增加上下文參數(shù)

在后續(xù)新增加的過濾器使用。

怎樣實現(xiàn)簡單的RPC框架

4.客戶端代理

RpcProxy在組裝RpcRequest對象時,從RpcContext中獲取最新的參數(shù)傳遞給RpcReuest,從而傳遞給服務(wù)端。

怎樣實現(xiàn)簡單的RPC框架

5.客戶端上下文過濾器

主要作用就是從本線線程變量中獲取參數(shù)傳遞給RpcInvocation。

怎樣實現(xiàn)簡單的RPC框架

6.服務(wù)端上下文過濾器

服務(wù)端上下文過濾器與客戶端的作用相反,是從RpcInvocation中獲取參數(shù)傳遞給本地線程變量RpcContext,后面在執(zhí)行服務(wù)端方法時就可以方便的通過RpcContext獲取指定變量。

怎樣實現(xiàn)簡單的RPC框架

7.過濾器排序

因為我們的RpcContext是個本地線程變量,而且Rpc服務(wù)端是多線程處理業(yè)務(wù),所以需要在請求結(jié)束后及時的清理掉相關(guān)本地線程變量信息。這就需要清理上下文的過濾動作在最后執(zhí)行,否則有會出現(xiàn)服務(wù)端方法還沒有執(zhí)行就被清空了參數(shù)。創(chuàng)建一個工具類,專門用來處理獲取客戶端以及服務(wù)端過濾器。增加order字段,升級排列。

怎樣實現(xiàn)簡單的RPC框架

8.過濾器工具類

創(chuàng)建ActiveFilterUtil,包含下面兩個函數(shù)。

(1)過濾器排序函數(shù),獲取特定注解的類,然后根據(jù)注解上的排序?qū)傩陨蚺判颉?/p>

怎樣實現(xiàn)簡單的RPC框架

(2)獲取RPC過濾器列表,提供給客戶端以及服務(wù)端的一個協(xié)助方法,便于客戶端以及服務(wù)構(gòu)建過濾器職責(zé)鏈。

怎樣實現(xiàn)簡單的RPC框架

9.客戶端以及服務(wù)端初始化

獲取過濾器map的邏輯改為調(diào)用上面ActiveFilterUtil.getFilterMap方法。
 

看完上述內(nèi)容,你們掌握怎樣實現(xiàn)簡單的RPC框架的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!


新聞名稱:怎樣實現(xiàn)簡單的RPC框架-創(chuàng)新互聯(lián)
本文來源:http://weahome.cn/article/pdgsj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部