是否有好的方法来支持来自Redis排序集的pop成员,就像列表的api LPOP一样?
我发现从Redis排序集中打开消息的方法是使用ZRANGE +ZREM,但是当多线程从不同的主机同时访问它们时,它不是线程安全,需要分布式锁。
如果有更好的方法从分类集合中弹出成员,请提出建议吗?
发布于 2019-03-12 11:25:29
在Redis5.0或更高版本中,您可以对此场景使用[B]ZPOP{MIN|MAX}键计数。
[B]ZPOP{MIN|MAX}
MIN版本采用得分最低的项目;MAX采用得分最高的项目。count默认值为1,B前缀会阻塞,直到数据可用为止。
MIN
MAX
B
ZPOPMIN
ZPOPMAX
BZPOPMIN
BZPOPMAX
https://stackoverflow.com/questions/44108327
相似问题