我正在开发一个网络应用程序,其中每个用户都有多个非本地XML文件,每个页面(重新)加载都会通过SimpleXML下载和解析。每个请求平均需要不到一秒的时间,但是有超过五个或六个文件(很可能),加载时间非常明显。所以我的问题是什么因素影响了功能的速度,有没有我可以控制和加速它们?
至于纯粹提高效率,检查上次更新时间的http标头是不准确的,我不认为cron作业会给我“实时”结果,我希望得到。
主要是因为我正在访问它们的服务器上的因素,还是他们在我这边?这是功能本身吗?显然文件的大小会影响速度。有没有什么方法可以在重置之前对其进行压缩,从而加快下载速度?
答案 0 :(得分:2)
让他们绝对生活的理由是什么?你能每15分钟更新一次吗?
你能克隆它们并一次缓存它们15分钟吗?
您可以确保从远程服务器获取它们的方法发送标头以接受gzip(并且您可以在结束时对它们进行放气)。
答案 1 :(得分:0)
如果您安装了cURL,可能需要尝试curl_multi_init()。它将并行执行任意数量的请求,因此使用5或6个请求的页面不应该比仅使用1或2的请求慢得多,特别是如果您安排代码在脚本中尽早启动这些请求尽可能。
话虽如此,显然还是比根本不执行任何远程请求更糟糕。