2

我想知道是否有人对在后台运行 csv/excel 导出查询有任何好主意,这将最大限度地减少查询负载。对于 10k+ 的结果,可能会导致查询缓慢。

4

2 回答 2

1

好吧,我建议您使用Sidekiq。这是我设想的方式

  1. 你点击导出按钮
  2. 包装保存整个 sql/activerecord 作业的方法,并将其放在 sidekiq 工作人员中。
  3. 生成 csv 后,使其在文件系统中可用,人们可以从那里下载它。

这样做的好处是,sidekiq 将帮助您加快 SQL 查询并正确分配负载,其次,您不会遇到浏览器超时问题,因为长时间的查询需要时间来加载和在浏览器上流式传输 excel/csv。

于 2013-03-04T22:26:25.450 回答
0

查看这些流行的后台作业库。这是一个常见的问题。

雷斯克

其他

RailsCast

于 2013-03-04T21:53:24.220 回答