### 比较Redis锁和普通锁的优劣
网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、微信小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了蒙城免费建站欢迎大家使用!
分布式锁是在分布式系统中用来处理操作的行为的一种机制,而比较redis锁和普通锁的优劣,主要就是Redis锁本质上是一种分布式锁,它有普通锁所没有的特性,开发者可以根据自己的实际需求选择合适的锁SM技术来实现。
普通锁基于操作系统的原子操作和抢占内存实现,一般申请锁为互斥锁,速度快,但因为只能在单机上运行,当集群出现负载均衡、故障迁移等情况时,它就不再能够发挥作用了。Redis锁和普通锁的优势在于,它基于 Redis 另一个比较重要的特性,即支持分布式锁,并且 Redis 的锁可以实现多进程之间的读、写锁,而且可以实现锁的非阻塞、可重入等高级特性;而且,因为 Redis 拥有非常强的持久性,即使系统发生崩溃,重启或者网络故障等情况, Redis 锁依旧可以实现高可用,基本上不会发生死锁。
但是,也存在几个不足,比如在 Redis 故障时无法持续使用锁,并且 Redis 的锁机制虽然可靠,崩溃时可重入,但是性能上仍然不及普通锁,一来用户的时间考验比较严格,同一个锁需要竞争、释放多次才能完成;二来,因为网络不稳定,可能使用节点下线造成 Redis 锁无法释放。
相比普通锁,Redis 锁具有更可靠的可用性,特别是在分布式情况下,但性能依然不及普通锁,开发者可以根据自己实际情况,选择合适的锁策略。
// 普通锁
synchronized(lock) { // 非阻塞
// 写操作
}
// redis分布式锁
String lock = redisTemplate.opsForValue().setIfAbsent(key,value);
if (lock.equals(‘ok’) { // 非阻塞
// 写操作
redisTemplate.delete(key);
}
香港服务器选创新互联,2H2G首月10元开通。
创新互联(www.cdcxhl.com)互联网服务提供商,拥有超过10年的服务器租用、服务器托管、云服务器、虚拟主机、网站系统开发经验。专业提供云主机、虚拟主机、域名注册、VPS主机、云服务器、香港云服务器、免备案服务器等。
新闻标题:比较Redis锁和普通锁的优劣(redis锁和普通锁)
文章地址:http://www.shufengxianlan.com/qtweb/news41/245891.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联