|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre chevronné
![]() Inscription : mars 2005 Messages : 1 667 ![]() |
Salut a tous,
en fait j'ai besoin de vos conseil. Je suis en train de faire un comparateur de prix. Pour ce faire je lis un fichier .csv qui contient toutes les données sur les produits distribuées pas le sites marchands. SUr mon site, dans ma base de donnée j'ai une table par site marchand (pour éviter d'aller lire a chaque fois dans le csv). Donc il faut que je la mettent a jours de temps à autreS. Pour ce faire j'avais pensé à faire un bouton "recharger" qui remettrais a jours la base de donné. Le problème c'est que c'est une opération très lourdes. (juste le fait d'extraire les données ca fait ramer mon pc avec WAMP). Donc qu'elle methode me conseiller vous? En fait j'avais penser à mettre un petit timer entre chaque requette (donc une requette par produit). Le script mettra plus de temps a s'executer mais consommera moin de ressource en faisant ca non? Que me conseillerez vous? (ne me dite pas de prendre plusieurs serveurs dédié ^^). Arf, de toute facon je viens de réessayer mon script et il me renvoie l'erreur: Fatal error: Maximum execution time of 30 seconds exceeded in D:\wamp\www\manganimesV3.0\lectcsv.php on line 88 Donc avec les timers ca sera encore pire. Comment puis-je m'y prendre? Bon je me suis débrouiller et j'ai bidouiller un truc qui marche avec des rafraichissement. (je met la valeur du compteur de la boucle dans l'url et je continue la boucle ou elle en était). Pour ce qui est des ressources serveurs. J'ai 2 possibilitée: 1 - laisser se faire la boucle le plus rapidement possible. 2 - Mettre un sleep cour (genre 0.1 sec) a chaque itération. A votre avis quelle est la meilleur solution pour les ressources? Finir le script le plus rapidement possible (il prend plus d'une minute à s'executer), ou allonger temps d'execution en rendant la tache plus légère avec des pauses? |
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : septembre 2005 Messages : 1 741 ![]() |
Tu devrais vraiment éviter les multi post ...
J'ai une question : pourquoi tu n'utiliserais pas un tache cron (exécution automatique de script) ?! ça te permettrais de faire ça automatiquement sans devoir appuyer sur un bouton et tu peux le faire par petite partie. Par contre à part savoir que ça existe c'est pas moi qui vais t'expliquer comment ça fonctionne |
|
|
00
|
|
|
#3 | |
|
Membre chevronné
![]() Inscription : mars 2005 Messages : 1 667 ![]() |
Citation:
Je vais chercher des infos la dessus. (sauf si quelqu'un ici connais bien cette methode ^^). |
|
|
|
00
|
|
|
#4 |
|
Inactif
![]() Inscription : septembre 2004 Messages : 11 753 ![]() |
Pour les taches cron il existe plusieurs solutions. Et elles sont souvent traitées sur le forum et dans les cours (surtout ceux de mathieu).
Il existe la solution webcron. une petite recherche sur le forum aidera à trouver ton bonheur |
|
|
00
|
|
|
#5 |
|
Membre expérimenté
![]() Inscription : octobre 2004 Messages : 872 ![]() |
en general les batch sont effectuées la nuit , par des taches cron ou autre
|
|
|
00
|
|
|
#6 |
|
Membre émérite
![]() Inscription : mai 2004 Messages : 709 ![]() |
Et aussi, veiller à optimiser la mise à jour. Comment fais-tu? INSERT/UPDATE dans une boucle ou LOAD DATA INFILE ?
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp :quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT Jabber: ripat at im.apinc.org |
|
|
00
|
|
|
#7 |
|
Membre chevronné
![]() Inscription : mars 2005 Messages : 1 667 ![]() |
Je fait une test pour chaque donné pour voir si le produit est présent ou pas. Si il est présent je fait update sinon insert.
Comment fait-on une tache Cron? |
|
|
00
|
|
|
#8 |
|
Membre émérite
![]() Inscription : mai 2004 Messages : 709 ![]() |
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp :quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT Jabber: ripat at im.apinc.org |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com