在Redis中实现某种key:key:list的更简单方法?

时间:2018-10-19 17:59:17

标签: java redis jedis

因此,我有一个等级列表,每个等级都有一个权限列表。我需要将它们存储在Redis中。

问题在于,从Redis下载这些等级的服务器不知道有多少等级/等级名称。

因此,我决定将“等级”:等级列表放入redis中,然后将“等级”:权限列表放入服务器中,这样服务器就可以遍历“等级”列表,并通过“排名”部分。

但是,这有点低效,因为我必须创建两个管道来执行此操作。

我想知道是否可以在Redis上创建类似key:key:list数据类型的方法?

例如

“排名”,rank0,权限列表

“排名”,等级1,权限列表

目前我有

“等级”,等级列表

“ rank0”,权限列表

希望这很有道理。

1 个答案:

答案 0 :(得分:0)

我可以想到两种选择:

  • 为任务创建一个Lua脚本。好处是您将删除所需的所有来回网络往返(但您仍然需要执行对所有列表的所有LRANGE调用)
  • 将键保存在哈希中,哈希的值是列表的序列化版本(例如JSON)。在您的代码中,您将调用Redis,但是您将需要以某种方式处理该信息

希望有帮助