Skip to content

XXL-RPC v1.2.2,分布式服务框架

Compare
Choose a tag to compare
@xuxueli xuxueli released this 26 Nov 04:38
· 219 commits to master since this release

Release Notes

  • 1、默认通讯方案切换为 Netty,可选方案依赖均调整为 provided 类型;提供强制依赖最小精简选型组合 "netty + hessian + 无注册中心(推荐采用:XXL-RPC原生注册中心)";
  • 2、XXL-RPC原生注册中心:底层抽象注册中心模块,并原生提供自研基于DB的注册中心,真正实现开箱即用,更轻量级、降低第三方依赖;至今XXL-RPC以提供三种注册中心具体实现:"XXL-RPC原生注册中心方案","ZK方案","Local方案";其中"XXL-RPC原生注册中心方案"特性如下:
    • 轻量级:基于DB与磁盘文件,只需要提供一个DB实例即可,无第三方依赖;
    • 实时性:借助内部广播机制,新服务上线、下线,可以在1s内推送给客户端;
    • 数据同步:注册中心内部10s会全量同步一次磁盘数据,清理无效服务,确保服务数据实时可用;
    • 性能:服务发现时仅读磁盘文件,性能非常高;服务注册、摘除时通过磁盘文件校验,防止重复注册操作;
    • 扩展性:可方便、快速的横向扩展,只需保证 "xxl-rpc-admin" 配置一致即可,可借助负载均衡组件如Nginx快速集群部署;
    • 多状态:服务内置三种状态:正常状态=支持动态注册、发现,服务注册信息实时更新;锁定状态=人工维护注册信息,服务注册信息固定不变;禁用状态=禁止使用,服务注册信息固定为空;
    • 跨语言:注册中心提供HTTP接口供客户端实用,语言无关,通用性更强;
    • 兼容性:“XXL-RPC原生轻量级注册中心”虽然为XXL-RPC设计,但是不限于XXL-RPC使用。兼容支持任何服务框架服务注册实用,如dubbo、springboot等;
    • 容器化:提供官方docker镜像,并实时更新推送dockerhub,进一步实现"XXL-RPC原生注册中心方案"产品开箱即用;
  • 3、XXL-RPC客户端适配"XXL-RPC原生注册中心",可快速接入,只需要切换注册中心实现为 "NativeServiceRegistry" 即可,文档由专门章节介绍;
  • 4、注册中心启动参数位置调整,与注册中心实现关联;
  • 5、服务提供者参数优化,IP为空时原生动态获取,核心参数启动时增强校验;
  • 6、注册模块API优化,改为批量模式进一步提升性能;
  • 7、文档增强,注册中心配置切换、通讯方案配置切换说明;
  • 8、IP工具类优化,兼容 Inet6Address 格式地址;
  • 9、Netty销毁逻辑优化;
  • 10、扩展第三方注册中心ZK底层逻辑优化,避免旧注册信息无法清理的问题;