Releases: imadcn/idworker
Releases · imadcn/idworker
1.6.0
Maven依赖
<dependency>
<groupId>com.imadcn.framework</groupId>
<artifactId>idworker</artifactId>
<version>1.6.0</version>
</dependency>
- 更新
- [新增] 序列化方式现在 可选 fastjson 或 jackson,此包依赖现在由使用者程序提供,详见 serialize 字段
- [新增] 现在可以自主控制是否使用节点缓存数据,详见 cacheable 字段
- [优化] 调整了节点缓存算法,对于IP地址的变化,不再做检查
- [优化] 修复BUG
1.5.0
1.4.0
Maven依赖
<dependency>
<groupId>com.imadcn.framework</groupId>
<artifactId>idworker</artifactId>
<version>1.4.0</version>
</dependency>
- 更新
- [新增] 现在可以选择是否将节点信息持久化注册到zookeeper,持久化存储及其策略会依赖于本地缓存文件,请根据实际使用情况来选择是否开启,
配置参考:idworker:generator # durable,generator:snowflake # durable
- [新增] 现在可以选择是否将节点信息持久化注册到zookeeper,持久化存储及其策略会依赖于本地缓存文件,请根据实际使用情况来选择是否开启,
1.3.2
1.3.1
Maven依赖
<dependency>
<groupId>com.imadcn.framework</groupId>
<artifactId>idworker</artifactId>
<version>1.3.1</version>
</dependency>
- 更新
- [重构] 重新设计了workerId分配的逻辑,现在向zookeeper申请workerId时,采用永久性节点,并同步缓存节点信息至本地文件,节点信息会每3s上报至zookeeper
- [重构] 重写了snowflake算法核心逻辑,不再支持low-concurrency模式配置,重构后的算法兼容"low-concurrency"模式
- [优化] 重写了部分业务代码
- 注意
- 由于重写了逻辑,此版本删除了部分配置文件选项,文档已同步更新,API已做过期标记
- 本地缓存文件生效判断逻辑:如果缓存中NodeId, GroupName, HostName, IP同ZK相应节点中的数据相等,会使用此workerId,不再申请新的workerId
- 完全离线模式暂不支持(即:本地有缓存文件,zk无法连接,直接使用本地缓存数据的模式),如果提示workerId已经分配完毕,请根据节点信息中的updateTime手动删除节点数据,后续提供api支持
1.3.0
1.2.5
Maven依赖
<dependency>
<groupId>com.imadcn.framework</groupId>
<artifactId>idworker</artifactId>
<version>1.2.5</version>
</dependency>
- 更新
- [新增] snowflake策略低并发算法 #8(雪花算法默认实现在调用频次低的情况下,都是垮毫秒生成,导致sequence全是0,最终数据都是偶数,奇偶不平均。此模式下sequence全局自增,同ms内溢出后,等待下1ms,而不是每次都置零。)可在配置中打开标签
low-concurrency
=true(默认为false) - [优化] 其他增强
- [新增] snowflake策略低并发算法 #8(雪花算法默认实现在调用频次低的情况下,都是垮毫秒生成,导致sequence全是0,最终数据都是偶数,奇偶不平均。此模式下sequence全局自增,同ms内溢出后,等待下1ms,而不是每次都置零。)可在配置中打开标签
1.2.0
Maven依赖
<dependency>
<groupId>com.imadcn.framework</groupId>
<artifactId>idworker</artifactId>
<version>1.2.0</version>
</dependency>
- 更新
- [新增] 新的ID生成策略[64进制UUID],将UUID缩短为22位长度的ID,取值范围[a-zA-Z0-9_\-]
- [新增] 字符串格式ID生成API,snowflake模式可以支持长度为固定20位的ID
- [新增] SpringNamespaceHandler现在可以配置Id生成策略,默认为snowflake策略,可以修改为64进制UUID策略(compress_uuid)
- [新增] 新的命名空间,<generator:xxx />更加快速的配置ID生成策略
- [优化] 覆盖了部分功能的单元测试
- [优化] 升级部分maven依赖至新版
- [修复] 功能性BUG修复
1.1.5
1.1.0
Maven依赖
<dependency>
<groupId>com.imadcn.framework</groupId>
<artifactId>idworker</artifactId>
<version>1.1.0</version>
</dependency>
- 更新
- [新增] zk状态监听,现在与zk断开后会暂停生成ID,直到重连成功
- [新增] 新的接口,新的设计模式,以解决不合理的设计
- [增强] 注册时,新增写入session等,重新注册时候判断节点是否是之前的节点,不再浪费节点
- [增强] 采用embed zookeeper来进行单元测试