Ice 规则引擎升级指南
⚠️ 重要提示:升级 Ice 规则引擎时,请先升级 Server,再升级 Client
v1.3.0 → v1.5.0 重大版本升级
Ice 规则引擎 1.5.0 是一个重大版本更新,带来了全新的可视化界面和 SpringBoot 3.x 支持。
服务端升级(Ice Server)
全新的可视化树图结构
- ✨ 新增拖拽式规则编排界面
- 🎨 优化规则配置页面交互
- 📊 增强规则可视化展示
客户端升级(Ice Client)
1. SDK 兼容性
- ✅ 本次升级完全兼容老的 Client SDK,可不升级
- 建议升级以获得更好的性能和新特性支持
2. 依赖名称变更
Ice 规则引擎客户端依赖名称调整,以支持不同的 SpringBoot 版本:
<!-- 旧版本(不再推荐) -->
<dependency>
<groupId>com.waitmoon.ice</groupId>
<artifactId>ice-client-spring-boot-starter</artifactId>
<version>1.3.0</version>
</dependency>
<!-- 新版本 - SpringBoot 2.x -->
<dependency>
<groupId>com.waitmoon.ice</groupId>
<artifactId>ice-spring-boot-starter-2x</artifactId>
<version>1.5.0</version>
</dependency>
<!-- 新版本 - SpringBoot 3.x -->
<dependency>
<groupId>com.waitmoon.ice</groupId>
<artifactId>ice-spring-boot-starter-3x</artifactId>
<version>1.5.0</version>
</dependency>
v1.2.0-v1.3.0
- 一些改进与修复,年代久远不太记得了...
v1.1.0-v1.2.0
配置
- 服务端
- 配置页面调整
- 客户端
- 增加@IceNode、@IceField、@IceIgnore注解用于提高配置的可解释性
v1.0.4-v1.1.0
配置
- 服务端
- 新增ice.ha配置,用于支持server高可用,单机server无需配置
- 客户端
- ice.server配置支持server高可用,如ice.server=zookeeper:localhost:2181,单机server与以往配置一致
v1.0.3-v1.0.4
- 代码
- IceNioClient.connect()变成start(),仅非Spring项目使用需修改
v1.0.1-v1.0.2/v1.0.3
配置
- 客户端
- 新增ice.scan配置,用于扫描叶子节点(默认扫描全部,扫描全部会拖慢应用启动速度),多个包用','分隔
代码
- Ice.processCxt和Ice.processSingleCxt更名为processCtx和processSingleCtx
- IceErrorHandle.handleError()和BaseNode.errorHandle()增加错误入参Throwable t
v1.0.1
不要使用1.0.0!!!因为打包推送中央仓库时的网络问题,导致1.0.0 jar包不完整!
配置
- 服务端
- ice.rmi.port去除rmi变成ice.port,升级时推荐替换掉原有端口号,避免脏数据问题
- 客户端
- 去除ice.rmi.mode,ice.rmi.port
- ice.rmi.server去除rmi变成ice.server
代码
- Ice替代IceClient,process()变成asyncProcess()
功能
- 脱离spring运行,
client = new IceNioClient(app, server).connect()
connect()为阻塞方法,可开启新线程运行,new Thread(client::connect).start()
,运行结束client.destroy()
销毁即可
- 脱离spring运行,