我有一个 Rails 应用程序,其中包含数万条记录,我轮询 API 以获取更新。我想知道在创建一个跟踪记录应该多久更新一次的系统(不仅仅是一个 cron 作业)方面的最佳实践是什么......有些记录比其他记录更重要/更及时......所以对于常规维护,我希望每天两次轮询和更新更重要的记录,而不是每天一次用于非重要记录。
所以假设这些记录有一些方法可以返回它们的“重要性”......我是否应该创建一种维护记录模型,belongs_to
每个记录并跟踪该记录的陈旧性(该记录的 updated_at 及其重要性的组合)?该记录还将记录最近一次尝试是否成功,并且可能在日志记录表中具有外键。
目的是要有maintenance_record
一些可以快速索引和排序的东西,这样类似 cron 的作业可以扫描列表以查找要执行的作业,而不是访问records
数据库(其中可能包含带有大量 blob 的记录等,并且可能数量级增长)。当然,我有不止一种类似记录的模型......所以拥有多态maintenance_record
似乎是明智的。
无论如何,这是个好主意吗?这似乎是一个经常出现的场景,所以我想知道是否有任何库可以专门处理它,尽管我想创建一个简单的库并不太难。