PHP 中的 cron 作业命中 100 多个动态 URL 以缓存页面


cron job in php to hit over 100 dynamic url's to cache pages

我们使用后端专有数据库将数据提供给我们网站上的 100 多个动态页面。 URL 的形式为 www.example.com/blah?id=1、www.example.com/blah?id=2 等。 这些页面最多可能需要 5 秒才能加载,因为检索数据的速度非常慢(因为我们连接到的数据库)。

我的目标是编写一个 cron 作业(在 PHP 中),它将"循环"并向我们所有的动态页面发出请求,以便它们被缓存(我们为这些页面提供 24 小时缓存)。

我最好的方法是带有嵌入式"wget"命令的 PHP 脚本,其中输出被忽略吗? 如果愿意,我可以访问 cURL。 编写一个将达到 100 个 URL 的脚本只是为了缓存页面是否存在性能问题? 我们当然会在晚上的高峰时段运行它。

感谢您对此的任何指导!

我建议使用多cURL来完成这项工作。 这样,您的请求将彼此并行运行。

您可以使用内置的 PHP 函数来执行此操作,但我建议使用包装它们的众多类之一:

https://github.com/jmathai/php-multi-curl

http://curl.haxx.se/libcurl/php/examples/multi.html