分布式全局唯一ID(二)

redis 实现分布式唯一ID,其实这个也很简单,主要使用redis String数据结构的 increment 方法。

原理:

使用increment方法,每次自加1,主要使用redis的高性能和单线程。

实现方式:

核心代码如下,若是为了保证长度一致,其实可以预先初始化值。现在的这个是从1,2.....逐渐递增的


	/**
	 * 注入Redis字符串模板
	 */
	@Autowired
	private StringRedisTemplate redisTemplate;

       /**
	 * 当前的值 + 1
	 *
	 * @param key 键
	 * @return 返回操作之后的值
	 */
	public Long increment(final String key) {
		return this.redisTemplate.opsForValue().increment(key, 1);
	}

	/**
	 * 当前的值加 + value
	 *
	 * @param key   键
	 * @param value 值
	 * @return 返回操作之后的值
	 */
	public Long incrementBy(final String key, final long value) {
		return this.redisTemplate.opsForValue().increment(key, value);
	}

猜你喜欢

转载自blog.csdn.net/qq_38428623/article/details/105495779