redis的hash为什么不能单独给每一个k-v加锁的猜想
问题见我之前的另一篇文章redis对hash字段加锁
问了一个大佬,说是不能单独加锁,或者说不能加行锁
下面是我的一些验证猜想
我把 redis 的 hash 对比为 php 中的一个数组,如下
$hash = [
"k1" => "v1",
"k2" => "v2",
"k3" => "v3",
];
现在我有3个人并发取这个数组修改数据,
并且他们每个人单独操作一行数据,还可以加锁;
仔细想,这样是不行的,并发取的是同一个数据,写进去,最后保存的,会把前面别人已保存的都覆盖掉;
所以应该对其整体 $hash
加锁操作
本作品采用《CC 协议》,转载必须注明作者和本文链接