dot Redis 8 来了——而且是开源的

了解更多

11.2 使用 Lua 重写锁和信号量

返回主页

11.2 使用 Lua 重写锁和信号量

在第 6 章介绍锁和信号量时,我展示了锁如何减少
WATCH/MULTI/EXEC 事务相比,在高流量情况下表现为悲观锁能减少竞争。
但在最佳情况下,获取或释放锁本身需要两到三个往返行程,并且在某些情况下可能会遭受竞争。
在本节中,我们将回顾第 6.2 节中的锁,并使用 Lua 重写它,以便

进一步提高性能。然后,我们将回顾第 6.3 节中的信号量示例,以实现完全公平的锁,同时提高性能。
首先来看看 Lua 中的锁,以及为什么我们要继续使用锁
全部。

信任
隐私