Java 分布式锁
为了保证在同一个时间只有一个线程操作数据。
比如再购债权和投标购买的接口(秒杀),为了保证数据一致性 使用了分布式锁。
可以使用 redis、zookeeper
JedisLock jedisLock = new JedisLock(jedis, "buyTransferDebt");
try {
if(!jedisLock.acquire()){
return new ResultBean<>(400,"系统繁忙,请稍后重试",null);
}
//其他操作
} catch (Exception e) {
log.error("购买失败",e);
return new ResultBean<>(400,"购买失败",null);
} finally {
jedisLock.release();
jedisPool.returnResource(jedis);
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
下一篇: MyBatis 介绍和使用
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论