我们使用redisson的分布式锁是为了避免分布式环境中的并发问题,但在获取锁的同时,我还想保存一些元数据,如userId(随机UUID),以知道谁获得了锁,但意外情况是,我不能使userId成为键的一部分.
所以请帮助我,如果我们可以在redis分布式锁中存储一些自定义元数据,或者如果有任何工作可以得到类似的结果。
RLock lock = redisson.getFairLock("anyLock");//if we can store some custom data with the lock key.
lock.lock();
try {
...
} catch {
lock.unlock();
}
可以使用绑定到Map表项的锁
RMap map = redisson.getMap("myMap");
RLock lock = map.getLock("key");
lock.lock();
try {
map.put("key", value);
} catch {
lock.unlock();
}