我有一个个人网站,可以从我最喜欢的音乐博客中抓取和收集 MP3 以供以后收听...
它的工作方式是 CRON 作业每分钟运行一次 .php 脚本,以抓取数据库中的下一个博客。结果被放入数据库,然后第二个 .php 脚本抓取收集到的链接。
脚本只爬入页面的两个级别,因此.. 主页 www.url.com 和该页面上的链接 www.url.com/post1 www.url.com/post2
我的问题是,当我开始收集更多的博客时。它们每 20 到 30 分钟才被扫描一次,当我将新博客添加到脚本中时,会在扫描链接时进行备份,因为每分钟只处理一个链接。
由于 PHP 的工作方式,由于脚本执行时间的原因,我似乎不能只允许脚本处理多个或有限数量的链接。内存限制。超时等
此外,我不能运行同一脚本的多个实例,因为它们会在数据库中相互覆盖。
我可以加快这个过程的最佳方法是什么。
有没有一种方法可以让多个脚本影响数据库但写入它们以便它们不会相互覆盖但将结果排队?
有没有办法在 PHP 中创建线程,以便脚本可以按照自己的节奏处理链接?
有任何想法吗?
谢谢。