Changes

Jump to navigation Jump to search
→‎Désactivation de xdebug: Mise à jour du chemin d'accès
Line 14: Line 14:       −
= Solutions recommandées =
+
=Solutions recommandées=
 
A partir de la v14, vous trouverez dans le menu '''Accueil - Outils d'administration - Performances''', une page avec des conseils sur votre configuration pour obtenir les meilleures performances de votre application. Commencez par cela si votre version est v14+.
 
A partir de la v14, vous trouverez dans le menu '''Accueil - Outils d'administration - Performances''', une page avec des conseils sur votre configuration pour obtenir les meilleures performances de votre application. Commencez par cela si votre version est v14+.
   Line 20: Line 20:       −
== Utilisez la dernière version de PHP ==
+
==Utilisez la dernière version de PHP==
 
Efficacité: ***
 
Efficacité: ***
    
Principe : Chaque nouvelle version de PHP rend l'application plus rapide que la précédente. Donc, si vous le pouvez, effectuez simplement une mise à niveau.
 
Principe : Chaque nouvelle version de PHP rend l'application plus rapide que la précédente. Donc, si vous le pouvez, effectuez simplement une mise à niveau.
   −
== Activer HTTP/2 ==
+
==Activer HTTP/2==
 
Efficacité: *
 
Efficacité: *
    
Principe : Le protocole HTTP/2 est connu pour être plus rapide que HTTP/1.1. Donc, si votre système d'exploitation et votre serveur Web sont compatibles, activez-le simplement.
 
Principe : Le protocole HTTP/2 est connu pour être plus rapide que HTTP/1.1. Donc, si votre système d'exploitation et votre serveur Web sont compatibles, activez-le simplement.
   −
== Désactivation de xdebug ==
+
==Désactivation de xdebug==
 
Efficacité: *****
 
Efficacité: *****
    
Principe: Si le module php xdebug est actif, il vous faut le désactiver. Ce module est une fonctionnalité de PHP qui sert aux développeurs mais ralentit fortement le fonctionnement de toute application PHP.  
 
Principe: Si le module php xdebug est actif, il vous faut le désactiver. Ce module est une fonctionnalité de PHP qui sert aux développeurs mais ralentit fortement le fonctionnement de toute application PHP.  
Pour savoir si ce module est actif, aller dans la pages '''Accueil-Configuration-Infos systèmes-PHP''' et faites une recherche sur '''xdebug'''. Si vous ne trouvez rien, le module n'est pas actif. Si vous trouvez une occurrence, il est actif et peut être désactivé.
+
Pour savoir si ce module est actif, aller dans la pages '''Accueil-Outils d'administrations-Infos PHP''' et faites une recherche sur '''xdebug'''. Si vous ne trouvez rien, le module n'est pas actif. Si vous trouvez une occurrence, il est actif et peut être désactivé.
 
Son activation/désactivation dépend de votre système PHP et OS mais le plus souvent on le désactive en commentant une ligne dans le fichier php.ini
 
Son activation/désactivation dépend de votre système PHP et OS mais le plus souvent on le désactive en commentant une ligne dans le fichier php.ini
   −
== Cache applicatif via MemCached ==
+
==Cache applicatif via MemCached==
 
Efficacité: *****
 
Efficacité: *****
    
Principe: Installer un serveur de cache Memcached et le [[Module MemCached]].
 
Principe: Installer un serveur de cache Memcached et le [[Module MemCached]].
   −
== Cache PHP OPCODE ==
+
==Cache PHP OPCODE==
 
Efficacité: ****
 
Efficacité: ****
   Line 49: Line 49:  
Notons que ce cache joue ici sur un niveau différent que le [[Module MemCached]], les gains sont donc cumulatifs !
 
Notons que ce cache joue ici sur un niveau différent que le [[Module MemCached]], les gains sont donc cumulatifs !
   −
== Cache HTTP des pages statiques ==
+
==Cache HTTP des pages statiques==
 
Efficacité: ***
 
Efficacité: ***
   Line 69: Line 69:  
[[File:warning.png]] Après avoir ajouté cela, vous devez recharger la configuration du serveur web mais également vider le cache local du navigateur afin de forcer ce dernier à redemander la ressource et récupérer le nouvel entête.
 
[[File:warning.png]] Après avoir ajouté cela, vous devez recharger la configuration du serveur web mais également vider le cache local du navigateur afin de forcer ce dernier à redemander la ressource et récupérer le nouvel entête.
   −
== Compression des ressources par Apache ==
+
==Compression des ressources par Apache==
 
Efficacité: ***
 
Efficacité: ***
   Line 80: Line 80:  
[[File:warning.png]] Après avoir ajouté cela, vous devez recharger la configuration du serveur web mais également vider le cache local du navigateur afin de forcer ce dernier à redemander la ressource et récupérer le nouvel entête.
 
[[File:warning.png]] Après avoir ajouté cela, vous devez recharger la configuration du serveur web mais également vider le cache local du navigateur afin de forcer ce dernier à redemander la ressource et récupérer le nouvel entête.
   −
== Utilisation du driver mysqli plutôt que mysql ==
+
==Utilisation du driver mysqli plutôt que mysql==
 
Efficacité: ***
 
Efficacité: ***
   Line 89: Line 89:  
Si la valeur vaut '''mysql''', changez la en '''mysqli''' qui donne de meilleures performances (gain de 30ms à chaque page).
 
Si la valeur vaut '''mysql''', changez la en '''mysqli''' qui donne de meilleures performances (gain de 30ms à chaque page).
   −
== Recherche sur début de champ ==
+
==Recherche sur début de champ==
 
Efficacité: ***
 
Efficacité: ***
    
Principe: Si vous avez activé dans le module Produit la recherche par "autocomplete" et si la liste met du temps à apparaitre à chaque saisie de caractère, c'est que vous avez un nombre important de produit. La recherche se faisant n'importe ou dans le texte, l'index de base de donnée ne peut être utilisé. En ajoutant la constante PRODUCT_DONOTSEARCH_ANYWHERE à 1 dans '''Accueil-Configuration-Divers''', vous limitez la recherche au début de la chaine rendant possible l'utilisation de l'index et obtiendrez une réponse immédiate.
 
Principe: Si vous avez activé dans le module Produit la recherche par "autocomplete" et si la liste met du temps à apparaitre à chaque saisie de caractère, c'est que vous avez un nombre important de produit. La recherche se faisant n'importe ou dans le texte, l'index de base de donnée ne peut être utilisé. En ajoutant la constante PRODUCT_DONOTSEARCH_ANYWHERE à 1 dans '''Accueil-Configuration-Divers''', vous limitez la recherche au début de la chaine rendant possible l'utilisation de l'index et obtiendrez une réponse immédiate.
   −
== Désactivation des ajax combo ==
+
==Désactivation des ajax combo==
 
Efficacité: ***
 
Efficacité: ***
   Line 100: Line 100:  
Ceci se fait depuis la page de configuration du module Tiers ou Produit.
 
Ceci se fait depuis la page de configuration du module Tiers ou Produit.
   −
== Utilisation d'un navigateur récent ==
+
==Utilisation d'un navigateur récent==
 
Efficacité: ***
 
Efficacité: ***
    
Principe: De plus en plus de fonctionnalités sont basés sur les technologies Ajax ou javascript afin d'offrir une ergonomie moderne. Ces technologies, ont une part non négligeable dans le temps d'affichage de certaines pages et sont beaucoup mieux exploités avec un navigateur Web récent. Les écarts en performance d'une version à l'autre sont parfois très importante, aussi pensez à utiliser un navigateur web optimisé et en version la plus récente possible (Firefox, Chrome, Safari ou Opera). Eviter IE ou autre navigateurs exotiques.
 
Principe: De plus en plus de fonctionnalités sont basés sur les technologies Ajax ou javascript afin d'offrir une ergonomie moderne. Ces technologies, ont une part non négligeable dans le temps d'affichage de certaines pages et sont beaucoup mieux exploités avec un navigateur Web récent. Les écarts en performance d'une version à l'autre sont parfois très importante, aussi pensez à utiliser un navigateur web optimisé et en version la plus récente possible (Firefox, Chrome, Safari ou Opera). Eviter IE ou autre navigateurs exotiques.
   −
== Mise à jour de statistiques de base ==
+
==Mise à jour de statistiques de base==
 
Efficacité: **
 
Efficacité: **
    
Principe: Si vous avez une base de donnée volumineuse (plus de 100 000 enregistrements), vérifiez que les statistiques de vos données sont à jour. Ceci requiert un accès administrateur à la base de donnée et des connaissances en administration de base. Consulter le manuel de la base de donnée sur le sujet "mise à jour des statistiques" pour cela.
 
Principe: Si vous avez une base de donnée volumineuse (plus de 100 000 enregistrements), vérifiez que les statistiques de vos données sont à jour. Ceci requiert un accès administrateur à la base de donnée et des connaissances en administration de base. Consulter le manuel de la base de donnée sur le sujet "mise à jour des statistiques" pour cela.
   −
= Autres solutions =
+
=Autres solutions=
 
Toutes les solutions ici sont catégorisées à part dans ce chapitre "Autres solutions" car elles ne sont pas recommandées. Toutes les solutions suivantes peuvent nécessiter des connaissances techniques avancées, peuvent être instables, non supportées ou peuvent rendre certaines fonctionnalités inopérationnelles... mais elles existent, aussi ne les employez que si vous savez ce que vous faites !
 
Toutes les solutions ici sont catégorisées à part dans ce chapitre "Autres solutions" car elles ne sont pas recommandées. Toutes les solutions suivantes peuvent nécessiter des connaissances techniques avancées, peuvent être instables, non supportées ou peuvent rendre certaines fonctionnalités inopérationnelles... mais elles existent, aussi ne les employez que si vous savez ce que vous faites !
   −
== Cache applicatif via la Shared memory ==
+
==Cache applicatif via la Shared memory==
 
Efficacité: ****
 
Efficacité: ****
   Line 120: Line 120:  
Principe: Ajouter dans '''Accueil-Configuration-Divers''' la constante MAIN_OPTIMIZE_SPEED. Si la valeur de cette constante a le bit 1 défini (Exemple: MAIN_OPTIMIZE_SPEED=2), la shared memory de votre OS est utilisée pour mettre en cache les fichiers lang, mais cela implique aussi que tout l'interface ne sera visible que dans une seule langue, celle du premier qui se connecte après un redémarrage du serveur web (qui charge les fichiers langues en cache). De plus, la shared memory peut s'avérer instable sur certains OS (Windows). Utiliser plutôt le [[Module MemCached]] pour une optimisation par un cache applicatif qui n'a aucune de ces contraintes et est encore plus performant, cette action sera alors inutile.
 
Principe: Ajouter dans '''Accueil-Configuration-Divers''' la constante MAIN_OPTIMIZE_SPEED. Si la valeur de cette constante a le bit 1 défini (Exemple: MAIN_OPTIMIZE_SPEED=2), la shared memory de votre OS est utilisée pour mettre en cache les fichiers lang, mais cela implique aussi que tout l'interface ne sera visible que dans une seule langue, celle du premier qui se connecte après un redémarrage du serveur web (qui charge les fichiers langues en cache). De plus, la shared memory peut s'avérer instable sur certains OS (Windows). Utiliser plutôt le [[Module MemCached]] pour une optimisation par un cache applicatif qui n'a aucune de ces contraintes et est encore plus performant, cette action sera alors inutile.
   −
== Désactiver le génération des PDF "à la volée" ==
+
==Désactiver le génération des PDF "à la volée"==
 
Efficacité: **
 
Efficacité: **
   Line 127: Line 127:  
Ceci désactivera la régénération du PDF à chaque fous que vous modifier un élément (facture, commande, ...). La génération du PDF aura lieu uniquement sur click du bouton "Générer".
 
Ceci désactivera la régénération du PDF à chaque fous que vous modifier un élément (facture, commande, ...). La génération du PDF aura lieu uniquement sur click du bouton "Générer".
   −
== Compression des ressources par Dolibarr ==
+
==Compression des ressources par Dolibarr==
 
Efficacité: **
 
Efficacité: **
    
Principe:  Ajouter dans '''Accueil-Configuration-Divers''' la constante MAIN_OPTIMIZE_SPEED. Si la valeur de cette constante a le bit 2 défini (Exemple: MAIN_OPTIMIZE_SPEED=4), Dolibarr renverra les pages compressés en GZ (et si le navigateur le supporte). Cela consomme plus de CPU sur le serveur mais réduit le temps de transfert. Préferrez toutefois la compression configuré par Apache (voir plus haut). Ne pas activez les 2 méthodes en même temps.
 
Principe:  Ajouter dans '''Accueil-Configuration-Divers''' la constante MAIN_OPTIMIZE_SPEED. Si la valeur de cette constante a le bit 2 défini (Exemple: MAIN_OPTIMIZE_SPEED=4), Dolibarr renverra les pages compressés en GZ (et si le navigateur le supporte). Cela consomme plus de CPU sur le serveur mais réduit le temps de transfert. Préferrez toutefois la compression configuré par Apache (voir plus haut). Ne pas activez les 2 méthodes en même temps.
   −
== Désactiver la fonction Canvas ==
+
==Désactiver la fonction Canvas==
 
Efficacité: *
 
Efficacité: *
    
Principe: Ajouter dans '''Accueil-Configuration-Divers''' la constante MAIN_DISABLE_CANVAS à la valeur 1. Ceci désactivera les fonctions de gestion de canvas qui peut être utilisé par certains modules externes et économisera une requête sur la base à chaque fois que vous accédez à la fiche d'un objet.
 
Principe: Ajouter dans '''Accueil-Configuration-Divers''' la constante MAIN_DISABLE_CANVAS à la valeur 1. Ceci désactivera les fonctions de gestion de canvas qui peut être utilisé par certains modules externes et économisera une requête sur la base à chaque fois que vous accédez à la fiche d'un objet.
 
Cependant, si un module externe utilise cette fonction de canvas, ceci rendra le module défectueux. Si vous n'avez installé aucun module complémentaire externe, il n'y a pas de risques.
 
Cependant, si un module externe utilise cette fonction de canvas, ceci rendra le module défectueux. Si vous n'avez installé aucun module complémentaire externe, il n'y a pas de risques.
30

edits

Navigation menu