redis的过期键消息通知
最近做项目我也用到了redis的过期键消息通知,条件是这样的,用户扫码输入信息后,1分钟开始指导用户做另一个事,然后在过2分钟出一个结果,结束后,另一个用户继续填写,继续这种操作,同时同一时刻也会有很多个这个用户扫码完成这个任务,接着下一组,我的涉及就是用户填写信息后设置一个1分钟过期键,然后在设置一个3分钟的过期键去处理。 关键有一个问题就是,测试2000组,遇到了大概3次过期键丢失的现象。有没有更好的方案去解决
10 回复
@wang-weifeng redis的键消息通知采用的是发布即忘的策略,node单个实例有可能出现断线的情况,可以通过多个实例来提高可靠,但只需要一个实例来处理,这里的话考虑加锁或者算法。加锁可以考虑 ioredis-lock
@nullcc 根据的提示,我看了一下,ADCE271044123AF7F06505CD2D0F02A1.jpg 然后我看这边的信息是不是Redis 的内存消耗峰值大于了由 Redis 分配器分配的内存总量,造成了这个问题