指定Redis密钥并达到某些条件时,是否有办法获得通知?

时间:2019-01-05 13:48:23

标签: redis

我有一个java(springMvc)项目,当多用户请求一项服务时, 每个线程将执行一些数据库操作并获得索引(使用计数器),然后将[index:memberId]添加到redis哈希键(例如redis:game:001)。

我们将哈希密钥设置为一个限制(例如小于8),当哈希密钥的大小达到8时,则curr线程必须处理密钥中的所有数据(例如保存在db中)[此操作是异步任务],但问题是:这次从计数器获取索引的线程是8(最后一个),这次,哈希键可能小于8,因此该线程将从redis哈希键<8获取数据,这是不正确的。

换句话说,多个线程同时从计数器获取索引,从计数器获取[index = 8]的线程必须处理所有redis数据(获取数据并保存到db),因此获得8的线程,可能是从Redis取得的数据小于8。 所以,我想知道,就我而言,当我指定的哈希键(redis:game:001)的大小为8时,可以从redis收到通知吗? 还是Redis可以使用CountDownLatch功能?

0 个答案:

没有答案