私は、お気に入りの音楽ブログから MP3 をクロールして収集し、後で聴くための個人 Web サイトを持っています...
その仕組みは、CRON ジョブが毎分 1 回 .php スクリプトを実行し、DB 内の次のブログをクロールすることです。結果は DB に入れられ、2 番目の .php スクリプトが収集されたリンクをクロールします。
スクリプトはページの 2 レベル下までしかクロールしないため、メイン ページ www.url.com とそのページ上のリンク www.url.com/post1 www.url.com/post2
私の問題は、より多くのブログのコレクションを取得し始めたことです。スキャンされるのは 20 ~ 30 分に 1 回だけです。新しいブログをスクリプトに追加すると、毎分 1 つしか処理されないため、リンクのスキャンにバックアップがあります。
PHP の仕組みにより、スクリプトの実行時間のために、スクリプトが複数のリンクまたは限られた量のリンクを処理することを許可できないようです。メモリ制限。タイムアウトなど
また、DB 内で互いに上書きするため、同じスクリプトの複数のインスタンスを実行することはできません。
このプロセスをスピードアップできる最善の方法は何ですか。
DB に影響を与える複数のスクリプトを作成して、相互に上書きせずに結果をキューに入れる方法はありますか?
スクリプトが独自のペースでリンクを処理できるように、PHP でスレッドを作成する方法はありますか?
何か案は?
ありがとう。