我有一个redis数据存储,其中存储了唯一的密钥。现在,我的应用服务器将向redis发送多个请求,以从start获取大约100个密钥,我正计划使用LRANGE命令来实现同样的目的。
但我的要求是,每个请求都应该接收唯一的键集,这意味着如果一个请求对100个键使用redis,那么这些键将永远不会返回给未来的任何请求。
正如我所看到的,redis的操作是原子的,所以我可以假设如果同时有多个来自应用服务器的请求到redis,因为redis是单线程的,所以它将执行LRANGE mylist 0 100,一旦它完成(意味着一旦100个键被获取并从列表中删除),那么只有下一个请求将被处理,所以原子性是内置的,对吗?在任何情况下,两个请求都可以获得相同的100个密钥,这是可能的吗?
https://stackoverflow.com/questions/66935016
复制相似问题