個別のセクションで構成された 1 つの大きな PHP スクリプトがあります。
- RSS フィードの取得 (SimplePie)
- MySQL DB に項目を保存する
- アイテムの内容を画像でチェック (DOMDocument() で img タグをチェック)
- 見つかった各画像からクロップを生成する (PHP Image Magician を使用)
各セクションは、約 10 ~ 20 MB のサーバー RAM を使用します。私はこれを使用してチェックしました:
echo memory_get_usage(true);
私のサーバーには 300 MB の RAM があり、念のため、長い実行時間のために max_execution_time を手動で 300 に設定し、万が一に備えてメモリ制限を増やしました。
メモリ制限と実行時間を次の方法で確認しました。
ini_set('max_execution_time', 300);
ini_set('memory_limit', '256M');
echo ini_get('max_execution_time');
echo ini_get('memory_limit');
ただし、約 90 ~ 120 秒後にスクリプトが停止し、Internal Server Error メッセージが表示されます。
私の問題はどこにありますか?