如何创建唯一数量的java long 类型,在分布式环境中?我的要求是:1-64位数字2-安全重启3-分布式环境3-无碰撞注意,拥有一个没有冲突的分布式环境排除了使用计数器或当前时间的简单方法。
long
mcvgt66p1#
如果您真的有一个分布式系统,即多个可执行示例正在创建id,并且id需要在所有示例中都是唯一的,那么您可能需要使用redis之类的东西。redis支持一个自动递增操作,可以帮助您实现这一点。
ssgvzors2#
使用atomiclong和计时器然后用hashset之类的集合处理它的值以避免冲突。
2条答案
按热度按时间mcvgt66p1#
如果您真的有一个分布式系统,即多个可执行示例正在创建id,并且id需要在所有示例中都是唯一的,那么您可能需要使用redis之类的东西。redis支持一个自动递增操作,可以帮助您实现这一点。
ssgvzors2#
使用atomiclong和计时器
然后用hashset之类的集合处理它的值以避免冲突。