Release Notes
- 一、內置註冊中心選擇ZK時邏輯優化,ZK初始化時unlock邏輯調整,優化斷線重連特性;
- 二、除了springboot類型示例;新增無框架示例項目 "xxl-rpc-executor-sample-frameless"。不依賴第三方框架,只需main方法便可啓動運行;
- 三、選型http通信方式時,校驗爲IP端口格式地址則主動添加地址前綴;
- 四、RPC異步請求邏輯優化,請求異常時主動通知Client端,避免無效等待時間;
- 五、http通信方式選型jetty時,線程池升級爲QueuedThreadPool,修復jetty9.4版本server自動銷燬問題;
- 六、Server新增 "/services" 目錄功能,可查看在線服務列表;
簡介
XXL-RPC 是一個分佈式服務通信框架,提供穩定高性能的RPC遠程服務調用功能。現已開放源代碼,開箱即用。html
在這裏輸入圖片標題
特性
- 一、快速接入:接入步驟很是簡潔,兩分鐘便可上手;
- 二、服務透明:系統完整的封裝了底層通訊細節,開發時調用遠程服務就像調用本地服務,在提供遠程調用能力時不損失本地調用的語義簡潔性;
- 三、多調用方案:支持 SYNC、ONEWAY、FUTURE、CALLBACK 等方案;
- 四、多通信方案:支持 TCP 和 HTTP 兩種通信方式進行服務調用;其中 TCP 提供可選方案 NETTY 或 MINA ,HTTP 提供可選方案 Jetty;
- 五、多序列化方案:支持 HESSIAN、HESSIAN一、PROTOSTUFF、JSON 等方案;
- 六、註冊中心:可選組件,支持服務註冊並動態發現;未啓用註冊中心時,支持直接指定服務提供方機器地址通信;原生提供 local 與 zookeeper 兩種服務註冊中心可選方案;
- 七、軟負載均衡及容錯:服務提供方集羣註冊時,在使用軟負載算法進行流量分發;
- 八、容錯:服務提供方集羣註冊時,某個服務節點不可用時將會自動摘除,同時消費方將會移除失效節點將流量分發到其他節點,提升系統容錯能力。
- 九、解決1+1問題:傳統分佈式通信通常經過nginx或f5作集羣服務的流量負載均衡,每次請求在到達目標服務機器以前都須要通過負載均衡機器,即1+1,這將會把流量放大一倍。而XXL-RPC將會從消費方直達服務提供方,每次請求直達目標機器,從而能夠避免上述問題;
- 十、服務治理:提供服務治理中心,可在線管理註冊的服務信息,如管理服務節點、節點權重等;(計劃中)
- 十一、服務監控:可在線監控服務調用統計信息以及服務健康情況等(計劃中);
- 十二、高兼容性:得益於優良的兼容性與模塊化設計,不限制外部框架;除 spring/springboot 環境以外,理論上支持運行在任何Java代碼中,甚至main方法直接啓動運行;
文檔地址
技術交流