類似dubbo的分布式RPC框架

2021-08-04 11:39:47 字數 837 閱讀 6637

模仿dubbo設計思路開發出來的一套分布式服務框架,本地測試通過,未經過生產環境測試,所以建議使用者經過嚴格測試或公升級後再考慮生產環境使用.

發布出來是希望能給做這方面研究的人員參考,如果有問題還希望各位酌情拍磚.

框架基於netty4實現socket通訊

基於apache curator實現zookeeper服務中心的註冊與發現,

參考dubbo的spi機制進行部分擴充套件與重構

剔除了dubbo的url思路

無縫整合了spring框架

使用kryo實現序列化功能

負載均衡整合進了dubbo內建的幾種演算法

注:以上功能僅適合研究不學習,暫不適合生產環境,慎重.

monitor目前開發了部分,還沒有開發結束

配置項:

每個專案中的util包中存在乙個final開頭的類,此類中的option型別為系統配置項及預設值

測試步驟:

1.啟動zookeeper

2.修改配置檔案remoter.example專案中的src/test/resources/remoter.properties檔案中的[registry.zookeeper.connection_address]為zookeeper的連線位址

3.啟動com.remoter.example.spring.testspringprovider類中的main函式

4.啟動com.remoter.example.spring.testspringconsumer類中的main函式(啟動後會報乙個埠占用異常,忽略即可,因為同一臺服務啟動了多個provider,配置檔案中並未修改provider的埠導致的)

謝謝.

分布式 dubbo筆記

dubbo是一種分布式服務框架。webservice也是一種服務框架,但是webservice並不是分布式的服務框架,他需要結合f5實現負載均衡。因此,dubbo除了可以提供服務之外,還可以實現軟負載均衡。它還提供了兩個功能monitor 監控中心和呼叫中心。這兩個是可選的,需要單獨配置。dubbo...

Dubbo 分布式服務

隨著網際網路的發展,應用的規模不斷擴大,常規的垂直應用架構已無法應對,分布式服務架構以及流動計算架構勢在必行,亟需乙個治理系統確保架構有條不紊的演進。垂直應用架構 分布式服務架構 流動計算架構 在大規模服務化之前,應用可能只是通過rmi或hessian等工具,簡單的暴露和引用遠端服務,通過配置服務的...

原 Storm分布式RPC

分布式 rpc drpc 的設計目標是充分利用 storm 的計算能力實現高密度的並行實時計算。storm 接收若干個函式引數作為輸入流,然後通過 drpc 輸出這些函式呼叫的結果。嚴格來說,drpc 並不能算作是 storm 的乙個特性,因為它只是一種基於 storm 原語 stream spou...