场景题:redis设置高并发抢单一的东西,如何避免高并发对一个键进行访问? 1. 利用 SETNX 只有在键不存在时才设置成功的性质,实现锁的作用 2. 使用 WATCH 命令监视该键,在事务中使用 MULTI+EXEC完成原子操作 3. 同步锁 RedLock 使用集群内多个节点实现同步锁,降低重入失败概率 4. 定时+自旋锁 设置一个定时键来实现锁,带有过期时间减少死锁风险 5. 随机等待 加随机等待来减缓并发冲突,比如usleep(rand()%1000)。 6. 请求进入redis前先进入消息队列进行削峰
点赞 评论

相关推荐

程序员牛肉:你这简历有啥值得拷打的?在牛客你这种简历一抓一大把,也就是个人信息不一样而已。 关键要去找亮点,亮点啊,整个简历都跟流水线生产出来的一样。
点赞 评论 收藏
分享
10-28 17:30
已编辑
华东交通大学 Java
想进开水团喝开水:字节的hr的本职工作就是黄金矿工
秋招笔试记录
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务