0
好吧,我正在处理一个新的rails应用程序,它需要在任何时候处理100万条左右的记录。新的导轨缓存
在任何时候那里将最大的是:
- 1500奥特莱斯
- 400用户
- 百万监测记录
对我有这样的运行Linode 512 VPS:
- 512MB RAM
- 20GB存储
我是新来的on Rails的缓存,而我不知道从哪里开始。
仪表板,运行以下查询:
# Controller
@outlets = Outlet.includes(:current_monitorings).where(:is_active => 'true')
# Model
has_many :current_monitorings, :class_name => "Monitoring", :conditions => proc { [ 'monitorings.created_at > ?', Time.now.midnight ] }
我将如何有效的缓存呢?
此外,我在我的Monitorings_controller中的标准CRUD设置。我该如何处理缓存?
任何帮助是极大的赞赏。
我对你刚才提到的问题,检查此链接,了解更多详细信息,高速缓存,它很可能你不需要对此的任何缓存。按照现代标准,你的数字都不大。通过监视索引(outlet_id,created_at),出口和监视之间的这个外部jojn查询应该由postgres快速提供。你尝试过了吗?我希望你应该能够每秒执行这个查询数百次。由于缓存引入了新问题(一致性,陈旧数据和过期策略,内存管理,附加服务),因此只缓存无法根据服务需求计算的内容。 – dbenhur 2012-04-02 16:16:04
这不仅仅是查询,由于某种原因,它会放慢一切...很多。我用虚拟数据为应用程序填充了大约60万个监视器,并且现在查询需要17秒来完成 – Ammar 2012-04-02 20:12:35
它从原始帖子改变了,我将有大约2000个网点,并且有1,000,000个监视器与它们相关联。 我想要显示一个仪表板,当今天监视与它们相关联时,每个仪表板都变为绿色。当前查询花费5分钟,并使用100%的CPU。 – Ammar 2012-04-02 21:22:10