我有一个rails应用程序,当前包含一个rake任务,该任务进入一个网站并进行一些屏幕抓取,然后在一个表中创建几个记录。当我运行此特定脚本时,大约需要10秒钟才能完成。此性能太慢,无法满足我的应用程序要求。 (注意:这个性能是通过命令行运行rake任务实现的)。
问题 - 如果要将rake任务转换为常规应用程序方法,应该期望性能提高,如果是,为什么?
答案 0 :(得分:2)
恕我直言,将rake任务拆分为常规跑步者应用程序不会提高性能。这是因为你仍然需要加载rails的所有组件,而且速度很慢。我建议你考虑优化你的算法逻辑。
如果无法更快地运行任务,则应将它们作为带有DelayedJobs或Resque或cron的后台作业运行。