版本说明

SOFARegistry 版本及发布说明如下:

版本

发布时间

发布说明

2.16.1

2024-05-13

优化

  • 升级基础镜像,支持新版 RASP。

  • 优化存量脏数据问题:

    数据缓存前添加合法性验证,不合法的数据将被拒绝写入缓存;对于已经存在的缓存不一致情况,由兜底逻辑最终完成清理。

  • 优化与 Console的同步机制:

    在进行与 Console 的心跳同步时,如果当前时间减去服务的注册时间小于指定时间,则不进行 hash 值比对。

修复

修复老版本客户端推送空指针问题。

2.16.0

2024-02-20

优化

  • 升级 jetty 到安全版本。

  • 优化 sub 的推送逻辑,减少无效推送,升级推送数据的补偿机制。

  • 优化 watcher 机制的推送逻辑,实现与 sub 等同的一致性保证。

2.15.2

2024-04-29

修复

修复 change-peer 不准确的问题。

2.15.1

2023-11-17

优化

  • 优化对 9601 端口探活请求的处理,避免因为 Console 类型判断逻辑引发的异常。

  • 升级 rocksdbjni 依赖,解决 jraft 升级后的不兼容问题。

修复

  • 改进数据一致性保障,解决在应用 repub 时可能发生的无限循环 unpub 问题以及 SessionServer 访问 DataServer 获取数据时可能发生的 java.lang.ClassCastException 问题。

  • 修复多 Console 模式下鉴权功能可能误判为无权限的问题。

2.15.0

2023-05-31

新增

添加 Prometheus 监控埋点。

优化

  • 升级基础镜像、SpringBoot 版本、三方包版本。

  • 优化多 Console 同步的异常处理机制。

  • 优化 RMS 监控毛刺问题。

修复

  • 修复多中心同步场景下,MetaServer 可能因为其他机房 MetaServer IP 发生变化而导致无法连接的问题。

  • 修复 ConnectionMapper 清理问题。

  • 修复 Console 同步重试不成功问题。

  • 修复 SessionServer 的 CPU 使用率高的问题。

2.14.0

2023-04-10

新增

支持数据推送的压缩。

说明

需要更新至商业版客户端版本 5.6.0、开源版客户端版本 5.3.1.cloud.20230227,或升级 SOFABoot 到 3.6.6 版本。

优化

Console 同步支持多同步功能,通过调用 Console 接口确认 Console 类型,然后对不同类型 Console 进行多同步。

修复

升级基础镜像,兼容 AKE 1.X 底座。

2.13.0

2022-12-20

优化

  • 公共云支持 RASP。

  • 优化启动脚本,解决 MetaServer 的IP地址变化导致发布失败的问题。

修复

修复 DataServer 初次连接 MetaServer 时采用随机选取,可能因为 MetaServer 有不可用节点导致概率性失败的问题。

2.12.0

2022-10-18

优化

  • 关闭 SessionServer 上 jersey 的 wadl,提高安全性。

  • 统一各 Server 的 logback 配置,添加单日志文件最大 100MB 及所有日志文件最大 5GB 限制。

修复

  • 改进 watcher 清理逻辑,避免出现无限循环删除。

  • 改进过期数据的清理逻辑:

    • 添加 dataInfoId 维度的数据过期检查和删除任务。

    • 添加 connectId 维度的 dump 日志,用于交叉比对,以定位其他未识别的脏数据问题。

2.11.0

2022-08-22

新增

Meta Server 新增全量地址信息推送的 HTTP 运维接口。此接口调用后,会将所有缓存的 pub 数据向所有已连接的 sub 端进行推送。

2.9.0

2021-08-29

更新

  • 去掉 push close 按钮。

  • 优化参数配置。

  • 修改 test 使用的 SessionServer 参数,直接使用 SessionServer 的 IP 地址。

修复

修复启动时,偶尔会启动 2 个进程的问题.

2.8.0

2021-07-14

更新

适配云游 1.4.0 版本。云游 1.4.0 版本对于 volume 挂载使用的是 PV,/home/admin/logs 目录权限被修改为 root 权限,需要应用在启动时,进行权限适配。

修复

修复服务端安全问题。

2.7.0

2021-04-27

新增

在 Antstack Plus 模式下,MetaServer 的 IP 会发生变化。为了支持双机房部署,增加 MetaServer 申请 SLB IP。 对于单机房也增加 meta-slb 的配置,为以后扩容为双机房做准备。

2.6.0

2021-04-06

更新

MetaServer 启动时,增加 30s 睡眠时间,避免获取其他机器的域名失败。

2.4.0

2020-04-22

新增

支持 ARM 架构。

说明

该版本只适用于 ARM 机房。

2.3.4

2020-10-13

修复

  • 修复同一个 Client 超时重 pub 会导致 publisher 丢失的问题。

  • 修复 SessionServer 内存在连接脏数据时不停打印错误日志的问题。

  • 修复 RPC Provider 改名后 DSRConsole 新旧 appName 都存在的问题。

  • 修复使用 OpenAPI 下线服务后,服务又在 DSRConsole 中出现的问题。

2.3.2

2020-06-05

修复

修复 hessian 和 Java 安全问题。

2.3.0

2020-02-07

新增

新增多机房数据打通的能力,支持在 metaNodes 参数中配置多个机房的 MetaServer 地址列表。

2.2.2

2020-06-05

修复

修复 hessian 和 Java 安全问题。

2.2.1

2020-02-06

修复

修复 MetaServer 内存升高,导致系统内存占用 90% 的问题。

2.2.0

2019-12-24

新增

合并 2.1.2 版本 MetaServer 内存持续增长问题。

更新

  • 删除 noguardregistry 一次性任务。

  • 一次性任务兼容专有云和网商融合版本(自动发现 meta_server 和 registrymeta)。

2.1.2

2019-12-23

修复

修复 MetaServer 内存持续增长问题。

2.1.1

2019-12-19

修复

  • 修复 IDC 维度,订阅数据被清空问题。

  • 修复在 scope.global 下 GR 隔离失效问题。

  • 修复网商 registrysession 同步给 DSRConsole 的问题:syncPub 和 syncSub 的 TaskDispatcher 队列太小,导致 QueueOverflows。

2.1.0

2019-10-16

新增

支持网商独占模式功能:

  • 增加同步 DSRConsole 独立开关,控制同步DSRConsole。

  • 增加默认 instanceid 定制能力,用于同一网商环境的默认 instanceid。

更新

数据同步功能性能增强。

1.14.1

2019-08-12

更新

升级一次性任务 metapush 和 metapushclose 的基础镜像,减少镜像体积。

1.14.0

2019-07-16

更新

更改内存计算规则脚本:

  • 操作系统不支持 free -m 时,将获取内存的脚本修改为 containerinfo --totalmemory 方式。

  • 修改非必要的 cd 目录解压缩包脚本。

1.13.0

2019-06-26

更新

metapush 和 metapushclose 升级基础镜像到 CentOS7。

1.12.0

2019-06-10

更新

MetaServer、DataServer、SessionServer 的基础镜像升级到 CentOS7。

修复

  • 注册中心服务下线 API 导致的序列化问题。

  • 修复 SyncClientsHeartbeatTask 在定期任务里做耗时操作的问题。

  • 修复 watcher 进行 unregistry 操作时获取数据问题。

1.11.1

2019-05-28

更新

适配 AKE 2.0,将 MetaServer、DataServer、SessionServer 的自动重启策略改为“是”。

1.11.0

2019-05-24

新增

  • 新增以下日志:

    • 增加推送数量日志。

    • 每分钟打印 healthcheck 健康状态日志。

    • 新增最近一分钟推空的数量日志。

    • MetaServer 定期打印 nodeList。

    • SessionServer 日志新增连接数信息。

    • 每分钟打印推送状态日志。

  • 新增以下监控:

    • MetaServer

      • 健康状态:不健康状态持续 5 分钟就报警。

      • 推送状态:推送关闭超过 10 分钟就报警。

      • metaNodeList、dataNodeList和sessionNodeList:列表为空超过 10 分钟就报警。

    • DataServer

      健康状态:不健康状态持续 5 分钟就报警。

    • SessionServer

      • 健康状态:不健康状态持续 5 分钟就报警。

      • 推送状态:推送关闭超过 10 分钟就报警。

      • 连接数监控:连接数连续 60 分钟为 0 就报警。

更新

  • JRaft 升级到 1.2.5 版本。

  • 修改 DataServer 之间的重连保证。

  • 修改 SOFA.CONFIG 类型数据启动期获取不到数据的默认处理方式。

  • 删除同步 DSRConsole 失败重试记录的无效记录。

  • SessionServer 的 console 日志改为1 分钟打印一次。

  • 删除“node ipAddress:10.**.**.74 cannot be found on config list!”报错日志。

  • 云游解决方案修改以下内容:

    • MetaServer 添加后置任务:关闭推送。

    • 将 logs 目录单独挂载。

    • 将 DataServer 和 SessionServer 配置在不同的物理机上。

    • 修改 MetaServer 启动内存参数。

      再次降低 xmx(2.3GB -> 1.8GB),并提取为云游参数,后续可针对不同环境修改配置。

    • 云游增加环境变量:REGISTRY_NODE_TYPE,代表具体的角色,取值为 METADATASESSION。镜像在启动后会根据该取值决定启动哪个角色。

修复

  • 修复 DataServer 从 working 状态变回 init 状态的 Bug。

  • 修复 DataServer 无法达到 working 问题。

  • 修复 DataServer 作为服务端,存储其他 DataServer 链接信息错误问题。

  • DataServer 扩容或重启之前没有 working 时,将 clientoff 和其他节点同步写入数据进行延后处理。

  • 修复 DataServer 定时重连 MetaServer 逻辑错误导致所有 DataServer 连接 MetaServer 失效,最后导致 SessionServer 无法接受新的 pub 请求问题。

  • 修复 MetaServer 节点在启动初期有几率注册自身节点失败的问题。

1.8.4

2019-03-07

新增

  • 新增 AnyTunnelSLB。

  • 在云游发布过程中,增加 HTTP 健康检测,确保启动成功。

修复

修复 MetaServer 关闭前自动打开推送的问题。

1.8.1

2019-03-01

修复

修复 SessionServer 在某些情况下存在脏数据引起 pub 被 discard 的问题。

1.8.0

2019-01-29

更新

  • 升级基础镜像。

  • 降低 MetaServer 堆内存(2.3GB -> 2.2GB)。

  • 同步 DSRConsole 主机名。

1.7.1

2019-01-09

更新

  • 延迟 session off 时间。

  • MetaServer JVM 参数微调。

修复

  • 修复 session list 不断变更的 Bug。

  • 修复 data unpub npe 的 Bug。

1.5.3

2018-12-07

新增

  • MetaServer、DataServer、SessionServer 节点的健康检查提供RESTFul 接口查询健康情况。

  • MetaServer 节点增加 update peer 接口。

更新

升级 JRaft 版本到 1.1.0。

修复

修复容器脚本 supervisor 参数配置导致多次启动的BUG。

1.5.2

2018-12-04

修复

修复堆内存物理内存减少 500MB 再进行计算的问题。

1.5.1

2020-10-16

更新

修改 JVM 启动参数。

1.5.0

2018-11-23

新增

增加测试应用 registrytest 镜像。

1.4.0

2018-10-11

新增

DataServer 增加 REST 接口,用户可以通过 REST 接口进行数据访问查询。

修复

修复 DataServer 部分数同步问题,增加线程池分配。