Redis锁是一种基于Redis缓存技术提供的分布式计算环境中的独占锁。使用Redis实现共享锁时,Redis Key的命名规则是非常重要的,它会影响分布式系统的可靠性和安全性。下面,我们来认真的解析一下背后的Redis Key命名规则。
常用的Redis锁Key有三种命名规则:
(1):lock格式
譬如:account:123456:lock,其中锁名account即请求的资源,123456为业务ID,可以根据具体你实际情况来进行相应的定制。
(2)_:lock格式
譬如:app1_account:123456:lock,其中应用ID为app1,业务ID为123456,一般这种格式使用在机器分布部署较为分散的场景,如应用服务发布比较密集的服务环境,能够有效的过滤掉不同服务的干扰。
(3)_:lock格式
譬如:on_account:123456,此种规则主要用于资源开关控制,譬如一些高频业务上,可以根据业务需要来进行上线和下线,当下线时,采用此种格式可以有效的降低资源的获取压力。
当对资源加锁时,锁的核心代码如下:
String lockKey = “account:”+accountId+”:lock”;
// 上锁,给定过期时间
long lock = redissonClient.getLock(lockKey).tryLock(wtTime, leaseTime, TimeUnit.MILLISECONDS);
if (lock) {
// 加锁成功获取业务数据处理
return true;
}
通过上面的代码,分析一下其中的lockKey命名规则,可以知道,此种命名规则主要有两个部分:一是锁名,二是业务ID,使用这种命名规则可以有效的保证不同的锁的唯一性,并且根据业务ID可以找到每一把锁对应的资源,能够帮助我们有效的限制使用锁的范围,从而达到良好的资源管理效果。
正确理解Redis Key命名规则能够有效的过滤掉不同服务的干扰,保证分布式系统的可靠性和安全性,也是应用Redis锁进行分布式计算环境中分布式系统性能和安全性一个重要组成部分。
香港服务器选创新互联,2H2G首月10元开通。
创新互联(www.cdcxhl.com)互联网服务提供商,拥有超过10年的服务器租用、服务器托管、云服务器、虚拟主机、网站系统开发经验。专业提供云主机、虚拟主机、域名注册、VPS主机、云服务器、香港云服务器、免备案服务器等。
名称栏目:解析Redis锁背后的Key命名规则(redis锁的key名)
网页URL:http://www.shufengxianlan.com/qtweb/news21/326021.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联