我正在寻找一个存储带时间戳的值的系统,并自动删除比特定时间窗口更早的那些。
类似于 RoundRobin 系统,但是,据我所知, RoundRobin 基于特定数量的记录并删除了旧的那些新的人即将到来。
在此系统中,可以任意数量的记录,只删除比特定时间更长的记录。
一个近似值可以是一个系统,其中每个记录都有一个超时,如:
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,...)
我不是在寻找一个完整的详细解释实现,只是某种灵感或任何相关文章或已有的系统,所以我不是重新发明轮子。
答案 0 :(得分:0)
在办公室,我们正在研究这个问题:
mykey_<Time.now.strftime("%Y%m%d%H%M")>
。incr
实际分钟的关键。