大型PHP脚本减慢了应用程序的其余部分....为什么?

时间:2014-11-01 18:53:53

标签: php

我有一个大型的php web scraping脚本,可以将结果记录到mysql数据库中。脚本通常一次运行5到10分钟。

问题是,当此脚本运行时,应用程序上的其他页面将无法加载。

该脚本位于具有大量RAM的专用服务器上,因此我尝试增加MYSQL和PHP的允许内存使用量。还增加了最大允许连接数。这些都没有帮助。

有没有人对我还能尝试什么有任何想法?

2 个答案:

答案 0 :(得分:2)

您的会话中可能存在问题。在开始“大脚本”之前尝试使用session_write_close()。

答案 1 :(得分:0)

嗯,“减速”和“不加载”之间存在很大差异!

尝试以下方法:

  1. 构建一个静态html站点并检查它是否在执行大脚本
  2. 期间加载好
  3. 在执行大脚本期间构建一个不连接数据库的php站点(只是回显一下)
  4. 构建一个连接到数据库的小型php站点(只需从表中选择一些内容)
  5. 如果1或2不能正常工作,那么您的问题与Web服务器或服务器资源有关。如果3不能正常工作,则mysql服务器可能存在资源问题。

    如果一切正常,请检查抓取脚本。它会锁定主应用程序所需的任何表吗?