我有一系列需要在后台完成的任务(Rails 5.0.1),顺序如下:
- 下载zip文件
- 从zip文件中提取xml文件(平均大小约为400 MB)
- 解析(Nokogiri XML::reader)符合某些限制条件的xml文件,并将它们添加到数据库(Postgres)中
- 从数据库中检索一些电子邮件地址并发送电子邮件
这需要每天定时完成,没有任何人工干预。现在,我正在使用Rails runner执行所有这些操作,并使用cron('Whenever' gem)进行调度。那么,使用“runner”是正确的方法吗?如果前端(管理面板)不经常使用,是否可以使用更少内存的方法?例如Active Job、Rake、Daemons等?