$ _SESSION vs Database vs File

时间:2015-07-06 12:59:20

标签: php database performance session curl

我的问题是:我有一个相当大的脚本,用于刮取HTML页面(出于搜索引擎优化的目的,没什么狡猾的)。 目前我有大约6个不同的函数通过cURL调用HTML页面,这显然是不对的。

所以我需要通过cURL获取一次页面,然后暂时将该页面的HTML存储在某处。考虑到HTML可能介于10KB到几MB之间,那么性能最佳的选择是什么?

我认为它会保存为临时文件,然后在脚本运行后删除该文件。对此问题的任何指导或解决方案表示赞赏。

由于

2 个答案:

答案 0 :(得分:2)

如果我说得对,你使用CLI PHP脚本来执行这些操作,因此$ _SESSION在这里不相关(因为你是客户端,而不是正在运行的Web服务器中的进程)。

数据库可以方便地保存有意义的关系数据;如果您计划在HTML正文中搜索(例如全文搜索)事物,那么您可以这样做,但我不确定您是否会从整个数据库环境中受益。在我看来,使用它与使用核武杀死蚊子是一样的。

如果你想保存这些数据以便以后处理它们,或者如果文件在每次迭代时完全处理,那么普通的旧文件就足够了恕我直言(另外你还可以使用很多方便的CLI像grep,sed,awk这样的工具,如果你需要的话)。 额外的奖金包括但不限于SVN,Git,完整的CLI访问,使用您想要的任何脚本/编程语言对本地存储文件的API访问,...

答案 1 :(得分:0)

会话:

除非你真的有一个会话,否则不要使用这个超全球。 在我看来,你的脚本作为一个cron-job或类似的东西运行,所以你没有会话。

文件:数据库

两者都是不错的选择。在这两种情况下,请确保使用正确的编码(不要尝试将UTF8存储在latin-9编码的数据库中,而不进行转换)。