J'ai créé un script PHP qui récupère certaines données d'un site Web, recherche les informations pertinentes et les stocke dans une base de données. Le script fonctionne bien sur la machine locale mais quand je l'exécute sur un serveur en utilisant cron, il s'arrête après avoir fait 10 insertions de base de données disantPHP: Utilisation très élevée de la mémoire sur le serveur de production alors que la mémoire locale est faible
"Erreur fatale: La taille de la mémoire autorisée de 67108864 octets est épuisée (essaye d'allouer 35 octets) dans /home/content/36/78632936/html/scripts/simple_html_dom.php en ligne
"
J'ai vérifié le même script sur mon utilisant get_memory_peak_usage local() et l'utilisation maximale vient environ 8 MB
Je suis perplexe quant à la raison pour laquelle l'utilisation de la mémoire est spectaculairement élevée sur la machine en direct .. Toute aide sera appréciée ..
Glimpse de mon code:
DB_table1: contient la liste des lignes de 60000 data
Le code principal commence par appeler le DB1 et obtenir les données, puis utiliser chaque ligne de données pour former une URL. Chacune de ces URL sera récupérée à l'aide de la fonction simple_html_dom() et le script recherchera des informations particulières sur chaque page et stockera ces données dans une autre table DB_table2.
S'il vous plaît laissez-moi savoir si vous avez besoin de savoir quoi que ce soit d'autre. Merci :)
Quels systèmes d'exploitation, versions php et mysql sont utilisés en direct et en local? – gnur
C'est une bonne idée si on ne voit pas ce qui se passe dans simple_html_dom.php à la ligne 809 (et les lignes au-dessus et en dessous, idéalement le bloc entier ...) – ty812
Etiez-vous en train de gratter tout le site? ? ou vous insérez-comme-vous-allez? – Quamis