所以我刚刚读到了红锁。我的理解是它需要3台独立的机器才能工作。通过独立,它们意味着所有机器都是主机,并且它们之间没有复制,这意味着它们服务于不同类型的数据。那么为什么我需要锁定存在于作为主人的三个独立redis实例中的密钥?我需要使用redlock的用例是什么?
那么为什么我需要锁定存在于作为主人的三个独立redis实例中的密钥?
这不是你在Redis中锁定密钥。相反,密钥是锁,用于控制对其他资源的访问。其他资源可能是任何东西,并且通常是Redis之外的东西,因为Redis有自己的机制允许对其数据结构进行原子访问。
我需要使用redlock的用例是什么?
当您只希望分布式系统中的一个成员执行某些操作时,您将使用分布式锁。
为了从互联网上随机抽取一个例子,here's Coinbase谈论他们使用分布式锁来“确保多个进程不会同时生成并向网络广播单独的事务”。