Date 按时间窗口循环
我正在寻找一个系统,它存储时间戳值,并自动删除比特定时间窗口早的值 有点像循环系统,但据我所知,循环是基于特定数量的记录,删除旧记录的数量与新记录的数量相同 在这个系统中,可以任意数量的记录,只需删除比特定时间周期早的记录即可 一种近似方法是每个记录都有一个实时超时的系统,如:Date 按时间窗口循环,date,round-robin,Date,Round Robin,我正在寻找一个系统,它存储时间戳值,并自动删除比特定时间窗口早的值 有点像循环系统,但据我所知,循环是基于特定数量的记录,删除旧记录的数量与新记录的数量相同 在这个系统中,可以任意数量的记录,只需删除比特定时间周期早的记录即可 一种近似方法是每个记录都有一个实时超时的系统,如: console.append "key", { :value => "value1", :timeout => 10.minutes_in_the_future } console.append "key",
console.append "key", { :value => "value1", :timeout => 10.minutes_in_the_future }
console.append "key", { :value => "value2", :timeout => 10.minutes_in_the_future }
console.append "key", { :value => "value3", :timeout => 10.minutes_in_the_future }
不知何故,系统负责删除任何过期记录
该系统可以基于任何高性能存储系统(Redis、Memcache等)
我不是在寻找一个完整详细的解释,只是一些灵感或任何相关文章,或者已经存在的系统,所以我不是在重新发明轮子。Memcache aprox
在办公室里,我们正在研究这个aprox:
前提条件
- 时间窗口为10分钟
- 我们只需要知道记录的数量,而不需要知道值
- 我们可以接受不太精确的解决方案
mykey\uu
增加实际分钟数的键
- 我们不能存储实际值,而只能累积一个值
- 每1分钟按键过期一次,总值会突然波动