Optimiser les fichiers PHP require ou include


Topsitemaker
WRInaute impliqué
WRInaute impliqué
 
Messages: 585
Inscription: 19 Nov 2006

Optimiser les fichiers PHP require ou include

Message le Dim Sep 25, 2011 10:50

Bonjour à tous,

Voilà une question pour les bidouilleurs du dimanche (et de la semaine aussi)

j'appelle dans mon fichier PHP avec une dizaine de require();, ce sont fichiers de fonctions, classes...

j'ai calculé que pour exécuter ces "require", il faut environ 0.045 s

j'ai eu l'idée de fusionner tous ces "require" dans un seul fichier require qui pèse environ les 700 Ko

malheureusement j'obtient toujours le même temps environ 0.045 s

Auriez-vous des idées pour raccourcir ce temps ? (mis à part écrémer les fichiers manuellement)


spout
WRInaute accro
WRInaute accro
 
Messages: 4379
Inscription: 14 Mai 2003

Re: Optimiser les fichiers PHP require ou include

Message le Dim Sep 25, 2011 11:45

- En déclarant les classes juste où c'est nécessaire, donc l'idée de fusionner c'est peut-être pas la meilleure.
- Avec du cache d'opcode : APC ?


Bigb06
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 496
Inscription: 21 Mar 2007

Re: Optimiser les fichiers PHP require ou include

Message le Dim Sep 25, 2011 15:11

Je ne sais pas si c'est efficace en terme d'accès, mais perso j'utilise le chargement dynamique comme spout le préconise:
Code: Tout sélectionner
// chargement automatique des classes
function __autoload($class_name) {
    require_once dirname(__FILE__).'/'.$class_name . '.php';
}


spout
WRInaute accro
WRInaute accro
 
Messages: 4379
Inscription: 14 Mai 2003

Re: Optimiser les fichiers PHP require ou include

Message le Dim Sep 25, 2011 15:24



Topsitemaker
WRInaute impliqué
WRInaute impliqué
 
Messages: 585
Inscription: 19 Nov 2006

Re: Optimiser les fichiers PHP require ou include

Message le Dim Sep 25, 2011 16:18

Je ne connaissais pas __autoload, intéressant mais ne vas surement pas résoudre le problème de chargement, il doit tester la présence du fichier avant, et j'ai besoin de quasiment toutes mes classes.

Je vais aller de voir du coté de l'APC.


mrPringle
WRInaute impliqué
WRInaute impliqué
 
Messages: 592
Inscription: 11 Mar 2006

Re: Optimiser les fichiers PHP require ou include

Message le Lun Sep 26, 2011 4:02

Si tu as une grosse appli, il n'y a pas de miracle hormis le cache opcode comme cité ci-dessus.

Il y a aussi Zend Optimizer / Guard mais c'est payant et je ne suis pas certains que le rapport gain en perfs / coût soit valable.


Topsitemaker
WRInaute impliqué
WRInaute impliqué
 
Messages: 585
Inscription: 19 Nov 2006

Re: Optimiser les fichiers PHP require ou include

Message le Lun Sep 26, 2011 11:23

Bonjour,

Merci Spout,
en effet j'ai pu descendre à 0.004s pour la dizaine de require, et d'après ce que j'ai compris j'ai encore un peu de la marge en tunant.


spout
WRInaute accro
WRInaute accro
 
Messages: 4379
Inscription: 14 Mai 2003

Re: Optimiser les fichiers PHP require ou include

Message le Lun Sep 26, 2011 11:30

APC est un must have :wink:
Il y en a d'autres: eAccelerator, XCache, ... mais il semblerait que APC sera fourni avec PHP6: http://davidwalsh.name/php6


Topsitemaker
WRInaute impliqué
WRInaute impliqué
 
Messages: 585
Inscription: 19 Nov 2006

Re: Optimiser les fichiers PHP require ou include

Message le Jeu Sep 29, 2011 18:37

l'APC me fout le Dawa en mode CLI

j'ai un affreux "Erreur de segmentation" avec un code retour 139, lorsque je lance n'importe quel script php en ligne de commande.

Il y a un remède à ça ?


spout
WRInaute accro
WRInaute accro
 
Messages: 4379
Inscription: 14 Mai 2003

Re: Optimiser les fichiers PHP require ou include

Message le Jeu Sep 29, 2011 18:38



Topsitemaker
WRInaute impliqué
WRInaute impliqué
 
Messages: 585
Inscription: 19 Nov 2006

Re: Optimiser les fichiers PHP require ou include

Message le Jeu Sep 29, 2011 20:50

quand je lance le script, ça m'indique juste "erreur de segmentation"
Je fais echo $?
ça donne 139
je n'ai pas plus d'infos.
En tout cas, tous les scripts PHP en CLI ne plantent pas, c'est déjà ça,
faut maintenant trouver le truc qu'il ne digère pas


Topsitemaker
WRInaute impliqué
WRInaute impliqué
 
Messages: 585
Inscription: 19 Nov 2006

Re: Optimiser les fichiers PHP require ou include

Message le Dim Oct 02, 2011 15:59

Bonjour,

rien que le fait de lancer php, ça fait "erreur de segmentation"
lorsque le script PHP est lancé avec la cron, aucun problème.

Vous avez des pistes ?


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités