分布式锁

在单机环境下,多线程同时访问变量可以用锁实现,但服务做集群呢 也就是多进程的情况,就没办法了,就需要分布式锁,跨jvm,就要保证一个方法或变量在同一个线程执行。

基于数据库实现分布式锁;基于缓存redis等实现分布式锁;基于Zookeeper实现分布式锁。

数据库只要是加一张表,有唯一索引不让重复加入 //todo

redis的话也是当key不存在就设置一个keyval字符串 返回1,存在就返回0,还可以设置锁的超时时间。todo

posted @ 2021-02-07 16:34  nkk  阅读(47)  评论(0编辑  收藏  举报