1. 程式人生 > >rpcx服務框架淺析1-角色說明

rpcx服務框架淺析1-角色說明

RPCX分散式服務框架主要致力於提供高效能和透明化的RPC遠端服務呼叫。

RPCX服務框架角色

節點角色說明:

  • Provider: 暴露服務的服務提供方。 
  • Consumer: 呼叫遠端服務的服務消費方。
  • Registry: 服務註冊與發現的註冊中心。 
  • Monitor: 統計服務的呼叫次數、呼叫時間、服務機器狀態監控的監控中心。 

呼叫關係說明: 

  • 1. 服務提供者在啟動時,向註冊中心註冊自己提供的服務。 
  • 2. 服務消費者在啟動時,向註冊中心訂閱自己所需的服務。 
  • 3. 註冊中心返回服務提供者地址列表給消費者,如果有變更,註冊中心將基於長連線推送變更資料給消費者。
  • 4. 服務消費者,從提供者地址列表中,基於軟負載均衡演算法,選一臺提供者進行呼叫,如果呼叫失敗,再選另一臺呼叫。 
  • 5. 服務消費者和提供者,在記憶體中累計呼叫次數和呼叫時間,定時每分鐘傳送一次統計資料到監控中心。

其核心功能包含: 

  • 透明化的遠端方法呼叫:就像呼叫本地方法一樣呼叫遠端方法,簡單易接入。 
  • 軟負載均衡及容錯機制:可在內網替代F5等硬體負載均衡器,降低成本,減少單點。 
  • 服務自動註冊與發現:不再需要寫死服務提供方地址,註冊中心基於介面名查詢服務提供者的IP地址,並且能夠平滑新增或刪除服務提供者。