当PHP需要一段时间来处理时,nginx抛出504错误

Mac*_*Mac 0 php memcached screen-scraping timeout nginx

我正在开发一种货币系统(不是一个大系统,只是一个简单的系统),用户可以将货币转换为另一种货币,这不是一个大项目,只是一个很少有人参与的小项目。但是,我使用PHP抓取Google货币计算器,该计算器每天抓取一次并将其存储到memcached中,当该项目在memcached中过期时,它将重新抓取以获取更新的货币值。

当抓取Google时出现此问题时(当前获取24种货币,每种货币获取24种货币,因此脚本抓取了48个不同的页面,当此脚本运行时,我通常会收到504 Gateway超时,因为脚本运行了大约200秒。

由于抛出了错误,因此我不确定在脚本抓取时是否可以通过PHP暂时增加Nginx超时,然后在完成后恢复原状。

我当时正在考虑通过cron作业进行操作,这样可以更好地解决问题,而不是在用户访问网站时进行处理?

小智 5

您应该使用cron作业...应避免一切可能导致浏览器超时的操作。

就是我的2美分