分布式锁
1.原生redis
注意事项:
1.释放锁必须使用lua脚本,保证原子性,防止释放掉别人的锁
2.这种方式实现的锁不具备等待功能,拿不到锁的线程会直接放弃,并不会排队等待并进行锁资源的竞争。而redisson实现了此功能
参考文章:redis分布式锁的正确实现方式 https://www.cnblogs.com/williamjie/p/9395659.html
2.原生zookeeper
3.基于zookeeper的curator框架
4.基于redis的redisson框架