我刚读了关于雷德洛克的书。我所理解的是,它需要三个独立的机器来工作。独立意味着所有机器都是主机,它们之间没有复制,这意味着它们正在服务不同类型的数据。那么,为什么我需要锁定一个存在于三个独立的redis示例中的密钥呢?哪些用例需要使用redlock?
atmip9wb1#
那么,为什么我需要锁定一个存在于三个独立的redis示例中的密钥呢?这并不是说你在Redis中锁定了一个密钥。相反,密钥 * 是 * 锁,用于控制对其他资源的访问。其他资源可以是任何东西,通常是Redis之外的东西,因为Redis有自己的机制允许原子访问其数据结构。哪些用例需要使用redlock?当您希望分布式系统中一次只有一个成员执行某些操作时,可以使用分布式锁。从互联网上随便举一个例子,here's Coinbase谈到他们使用分布式锁来“确保多个进程不会并发地生成并向网络广播单独的事务”。
1条答案
按热度按时间atmip9wb1#
那么,为什么我需要锁定一个存在于三个独立的redis示例中的密钥呢?
这并不是说你在Redis中锁定了一个密钥。相反,密钥 * 是 * 锁,用于控制对其他资源的访问。其他资源可以是任何东西,通常是Redis之外的东西,因为Redis有自己的机制允许原子访问其数据结构。
哪些用例需要使用redlock?
当您希望分布式系统中一次只有一个成员执行某些操作时,可以使用分布式锁。
从互联网上随便举一个例子,here's Coinbase谈到他们使用分布式锁来“确保多个进程不会并发地生成并向网络广播单独的事务”。