Rides 高并发下分布式锁的处理

你离开我真会死。 提交于 2019-12-18 15:19:44

分布式环境下多个操作以原子的方式执行

单体操作可以加锁synchronized{
}

如果是分布式的环境
前端niginx部署多个端口,会有bug
redis中文手册api
setnx 将key的值设为values,当key不存在时,如果给定的key已经存在,则setnx不做任何动作
进入时setkey值,
处理逻辑,
结束时删除key值,
这样在处理逻辑时如果发生异常,直接凉凉,key值一直不会被删除
所以加异常吹trycatch
但是服务在处理逻辑时挂了怎么办,
加redis超时时间,保证原子性
然后多个服务配置不同的唯一id,保证锁唯一

集大成者直接用redission框架 lock

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!