redis队列lpush rpush插入队列是没有判断重复的,如何做到有的重复的时候不插入呢??redis是有一个集合不允许重复,他们2个如何结合起来实现呢???
如你所说,可以先将你的数据尝试放入 SET 中,如果没有存入,说明 SET 中就有这个数据,那就不要执行 push 命令了。不然的话可以考虑使用 lua 完成上述功能,然后作为一个指令提供给调用方。
1、set进去的数据就是有序和不重复的,所以不会出现重复的情况2、你每次执行成功之后就要删除集合里面的数据3、如果执行失败就将失败的数据存放在另一个集合中使用多线程进行同步处理
簡單點,先 lrem 再 push
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
2 回答3.1k 阅读
1 回答1.9k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
2 回答10.3k 阅读
2 回答4.9k 阅读
3 回答3.7k 阅读
2 回答10.8k 阅读✓ 已解决
2 回答3.8k 阅读
如你所说,可以先将你的数据尝试放入 SET 中,如果没有存入,说明 SET 中就有这个数据,那就不要执行 push 命令了。
不然的话可以考虑使用 lua 完成上述功能,然后作为一个指令提供给调用方。