来源:许雪里
浏览 1107
扫码
分享
2019-11-18 20:53:52
五、版本更新日志
5.1 版本 v1.0.0 Release Notes[2018-12-01]
- 1、轻量级:基于DB与磁盘文件,只需要提供一个DB实例即可,无第三方依赖;
- 2、实时性:借助内部广播机制,新服务上线、下线,可以在1s内推送给客户端;
- 3、数据同步:注册中心内部10s会全量同步一次磁盘数据,清理无效服务,确保服务数据实时可用;
- 4、性能:服务发现时仅读磁盘文件,性能非常高;服务注册、摘除时通过磁盘文件校验,防止重复注册操作;
- 5、扩展性:可方便、快速的横向扩展,只需保证服务注册中心配置一致即可,可借助负载均衡组件如Nginx快速集群部署;
- 6、多状态:服务内置三种状态:
- 正常状态=支持动态注册、发现,服务注册信息实时更新;
- 锁定状态=人工维护注册信息,服务注册信息固定不变;
- 禁用状态=禁止使用,服务注册信息固定为空;
- 7、跨语言:注册中心提供HTTP接口(RESTFUL 格式)供客户端实用,语言无关,通用性更强;
- 8、兼容性:项目立项之初是为XXL-RPC量身设计,但是不限于XXL-RPC使用。兼容支持任何服务框架服务注册实用,如dubbo、springboot等;
- 9、跨机房:得益于服务注册中心集群关系对等特性,集群各节点提供幂等的配置服务;因此,异地跨机房部署时,只需要请求本机房服务注册中心即可,实现异地多活;
- 10、容器化:提供官方docker镜像,并实时更新推送dockerhub,进一步实现 “服务注册中心” 产品开箱即用;
- 11、long polling 超时时间优化;服务端默认 30s 超时限制;客户端默认 60s 阻塞登台;二者以较小者为准,建议客户端大于服务端。
5.2 版本 v1.0.1 Release Notes[2018-12-20]
- 1、访问令牌(accessToken):为提升系统安全性,注册中心和客户端进行安全性校验,双方AccessToken匹配才允许通讯;
- 2、底层通讯参数统一:请求参数统一由 postbody 发送接收,数据格式见公共消息体 “XxlRegistryParamVO”,内部包含 accessToken、biz、env 等属性;
- 3、环境属性 “env” 长度限制调整为 “2~255” ,兼容 “qa”、”dev” 等短环境标识;
- 4、升级 pom 依赖至较新版本;
5.3 版本 v1.0.2 Release Notes[2018-02-21]
- 1、服务端空值也支持响应,客户端注册信息发现null值缓存,避免缓存穿透;
- 2、客户端配置监控逻辑优化,避免异常情况下重试请求太频繁;
- 3、客户端日志优化:仅变更日志保留为info级别,非核心日志调整为debug级别;
- 4、内部JSON组件优化,支持多级父类属性序列化;
- 5、移除冗余属性,如version等;
- 6、服务注册中心全量同步线程优化,对齐起始时间,避免集群节点数据不一致;
5.4 版本 v1.1.0 Release Notes[2019-11-16]
- 1.注册日志文件加载方式优化,修复文件名乱码问题;
- 2.修复服务注册version不匹配问题;
- 3.升级依赖版本,如slf4j-api/spring-boot/mybatis/mysql等;
5.4 版本 v1.1.1 Release Notes[迭代中]
TODO
- 服务端:注册IP黑名单、白名单;
- 客户端:瞬间下线拒绝,比如超过 90% 服务批量下线,本次下线标记失败,连续三次才生效;防止注册中心故障,导致整体服务不可用;
- 注册方式附属信息;
- 服务注册,支持节点权重配置;
- 注册服务支持Tag属性;如机房TAG,客户端优先使用本机房,即机房TAG一致的服务;
- springboot、dubbo 示例;
- 单机版本:H2数据库;
当前内容版权归
许雪里 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问
许雪里 .