使用redis分布式锁实现“茅台”秒杀

编程入门 行业动态 更新时间:2024-10-28 03:29:19

使用redis分布式锁实现“<a href=https://www.elefans.com/category/jswz/34/1759040.html style=茅台”秒杀"/>

使用redis分布式锁实现“茅台”秒杀

什么是分布式锁?

分布式锁就是:控制分布式系统有序的去对共享资源进行操作,通过互斥来保持一致性。
举个大白话一样的例子:假设共享的资源是一辆共享汽车,这辆车在一个时间只能有一个人去驾驶,分布式系统就好比是要驾驶车的人,分布式锁就是保证这个时间点只能一个人驾驶,并且只有这一把钥匙。然而,有好多人要租车,但是要按顺序来排队,第一个人拿着钥匙去用车,下一个人要等着,当第一个人用完车把车还回来,下一个人才能继续驾驶,然后就是以此类推。

分布式锁的特点

为了保证分布式锁的可用性,必须要满足下面的四点条件!

1.互斥性: 保证同一时间只能有一个客户端拿到锁,也就是可以对共享资源进行操作。

2.安全性: 锁只能被持有该锁的客户端解锁,不能由其他客户端解锁(解铃还需系铃人)。

3.避免死锁: 出现死锁(如down机可能会出现)就会导致后续的任何客户端都拿不到锁,不能再对共享资源进行任何操作了。

4.容错: 保证客户端加锁和解锁操作是原子性操作,当部分节点(redis节点等)down机时,客户端仍然能够获取锁和释放锁。

常见的分布式锁有哪些?

1.数据库乐观锁 通常实现基于数据版本(version)的记录机制实现的。

2.zookeeper的分布式锁

更多推荐

使用redis分布式锁实现“茅台”秒杀

本文发布于:2024-02-27 07:38:50,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1705737.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:茅台   分布式   秒杀   redis

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!