Annonce

#1 2009-05-23 15:05:48

vimages
Membre
2004-03-27
2429

[Piwigo BDD] optimisation de la BDD

Bonjour.

Le début d'année a été hyper chargé... par un jour de répit.. une chance pour vous, puisque je vous ai laissé tranquille.. :o)

Aujourd'hui, nous avons franchi un cap, ici, à l'agence. Nous avons travaillé à notre serveur internet (merci Jérôme), nous l'avons nettoyé de tout ce qui pouvait interférer dans l'affichage des sites, puis installé des Virtual Hosts dans Apache, pour avoir des noms de domaines et des adresses de pages qui soient cohérentes. Plus de redirections transparente, ou permanente.. néfastes pour le référencement et pour la navigation.

Le serveur étant maintenant optimisé, il est plus facile de voir ce qui ce passe dans nos galeries piwigo.

19 sites sont en ligne, actifs, tous sur la base de piwigo 2.0.2.

18 sont privés et contiennent assez peu d'images (maxi 7000) . Pour ceux là aucun problème, la navigation est très rapide.
1 serveur est bien plus chargé, notre serveur sport.v-images.com, destiné aux médias.voici les infos à ce jour.

Environnement

        * System d'exploitation: WINNT
        * PHP: 5.2.8 (Montrer les informations) [2009-05-23 14:51:44]
        * MySQL: 5.1.30-community [2009-05-23 14:51:44]

Base de données

        * 90376 images
        * 2472 catégories dont 2468 physiques et 4 virtuelles (90640 associations)
        * 2041 tags (371910 associations)
        * 337 utilisateurs
        * 13 groupes


Le site fonctionne bien, sans bugs, mais pour l'affichage les gros dossiers, il est un peu lent. Bien sur nous optimisons maintenant les tailles des thumbnails et des images moyennes. (une vignette de 150px passe de 15ko à 3 Ko en nettoyant les Exif, XMP, et vignette intégrée...)

En activant les lignes de debug/queries, on s'aperçoit que si on demande l'affichage de catégories contenant beaucoup d'images et de sous catégories, c'est assez long.. je pense, un peu trop long...
Le temps "perdu" est pris par des accès disques effectués par MySQL.

Pour les détails, je pourrais les réactiver, et permettre à celui ou celle qui le souhaite de les voir.

Donc, ma question, peut-être aux spécialistes de BDD ? dont pierrick bien sur; ou en êtes vous de l'analyse du fonctionnement de la BDD ? Est-il possible de rendre les accès plus rapide, nouveaux index ? .. comment l'optimiser, la rendre plus performante ?

Merci de me dire votre avis, et ce que je peux faire pour vous aider à appréhender les données de ma galerie..

Amicalement,
éric.

Hors ligne

#2 2009-05-23 17:42:14

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12639

Re: [Piwigo BDD] optimisation de la BDD

Bonjour vimages,

Encore une fois, des chiffres impressionnants :-)

Je ressens effectivement des gros ralentissements, mais côté client. Si tu peux momentanément faire un :

Code:

$conf['show_gt'] = true;

pour qu'on s'assure que côté serveur, il n'y a pas de soucis...

Tu utilises un système d'affichage type "lightbox" et ça peut faire bien ramer un navigateur.

Tes miniatures, elles sont faites automatiquement par le navigateur à partir des tailles web, ou c'est des vraies ? parce que :

1. je les trouve de mauvaise qualité (on voit nettement les artefacts JPEG)
2. pour quelques unes que j'ai vu, elles sont très très volumineuses

Exemple: http://sport.v-images.com/index.php?/category/392


Les historiens ont établi que Pierrick était le premier utilisateur connu de Piwigo.

Hors ligne

#3 2009-05-23 18:45:27

vimages
Membre
2004-03-27
2429

Re: [Piwigo BDD] optimisation de la BDD

Merci de ta réponse Pierrick.

Je serais visible sur skype et tu me diras à quel moment tu seras sur le site pour que je mette, $conf['show_gt'] = true;   , histoire de pas le laisser en permanence.


Le popup n'est pas en cause, du moins, pas seul en cause... certes les pages de thumbnail sont de son fait plus longues à charger. Normal...

Mais, il semble, d'après les tests (show queries, etc..) comparatifs entre les galeries contenant moins d'images et la galerie concernée, que la taille des BDD et leur contenu soit en cause dans le temps nécessaire à l'affichage.

Cela est logique... sauf qu'il semble que la BDD prenne tout de même un peu trop son temps, d'après jérôme (mon photographe/informaticien, perle rare !  :o), les temps d'accès disque de celle-ci sont un peu long au regard du nombre de lignes à parcourir, il a suggéré de voir du côté de la façon dont elle est agencée (indexée ?)  Bien sur en précisant qu'il n'avait pas étudié la bête et qu'il fallait être prudent..... la critique n'est que constructive.

Pour les vignettes, je les génère avant l'upload... 150px et 72 dpi.  le lien que tu donnes pointe vers un dossier que je n'ai pas repris.. comme je le dis plus haut, il faut que je nettoie  tous les dossiers thumbnail, que j'enlève des fichiers vignettes (.jpg), les données superflues (EXIF, vignette intégrée, XMP) qui les alourdissent.  long travail, à faire petit à petit.

Pour vérifier la rapidité de calcul de cet affichage, sans être pénalisé par la taille de vignettes, j'ai regardé sur les catégories mères...  par exemple, sur la galerie sport.v-images.com, sport mécaniques / 2008 (elle est énorme) mais pas de vignettes à charger...

Le sujet est multiple, et bien sur les performances d'une galerie dépendent de plusieurs facteurs. Nous sommes en train de les passer un par un.
- ne garder sur le serveur que les programmes strictement nécessaires, les services indispensables.
- défragmenter régulièrement
- optimiser les tailles des fichiers.
- vérifier qu'il n'y a pas de virus ou malware qui utilise le serveur à notre insu,
- optmiser la galerie et la base de donnée......................
-
-
-

Alors, le propos n'est pas de dire que la BDD n'est pas au top, juste d'en discuter bien entendu.


merci de ton intérêt.
amicalement,
éric.

Hors ligne

#4 2009-05-23 18:54:00

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: [Piwigo BDD] optimisation de la BDD

Pour ceux qui en douteraient, je suis "Webmestre" de la galerie de vimages (comme quelqu'un d'autre de l'équipe, cependant nous ne touchons pas aux droits et images, et il est donc inutile de demander un accès).
J'ai le plaisir de vous confirmer les chiffres annoncés ci-dessus.

Pour tes accès,...


Dans la fonction de ton plugin perso, ajoute:


if (is_admin()) $conf['show_gt'] = true;

Il faudra activer les traces et trouver la(es) requête(s) qui consomment à l'aide de Multi-view.
Mais pour moi, le problème est sur ton file server, il n'est pas performant (intuition).


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#5 2009-05-23 19:18:16

vimages
Membre
2004-03-27
2429

Re: [Piwigo BDD] optimisation de la BDD

Merci vincent. Toujours le compliment qui fait plaisir... :o)
Les membres du team, fidèles amis qui sont toujours si disponibles et prompt à aider l'utilisateur que je suis, sont toujours bienvenus sur mes galeries, ont porte ouverte et le téléchargement autorisé !!! C'est la moindre des chose.

Bon, j'ai mis la ligne dans le plugin perso.

Quelles lignes souhaites tu que j'active dans le fichier conf ?

Par file server.. qu'entends tu ? le disque dur? l'ordi ? ... le disque est  un disque dédié, 7200tours, 1To, avec beaucoup de cache....

merci
amicalement,
éric.

Hors ligne

#6 2009-05-23 20:55:37

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: [Piwigo BDD] optimisation de la BDD

vimages a écrit:

Bon, j'ai mis la ligne dans le plugin perso.

Quelles lignes souhaites tu que j'active dans le fichier conf ?

Par file server.. qu'entends tu ? le disque dur? l'ordi ? ... le disque est  un disque dédié, 7200tours, 1To, avec beaucoup de cache....

Et visiblement $conf['show_gt'] = true; arrive trop tard dans la logique, c'est raté.
Je fais 2/3 essais en local et je te dis.
Le disque...
(Je ne sais pas ce que tu as)
mais je pense que cela n'a rien à voir avec les moyens mis en oeuvre chez des hébergeurs.
;-)


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#7 2009-05-23 21:06:10

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: [Piwigo BDD] optimisation de la BDD

Annule la manip précédente.

Mais ajoute-nous...

add_event_handler('user_init', 'Trace_local_init' );

function Trace_local_init()
{
  if (!is_admin()) return;
  $conf['show_gt'] = true;
  $conf['show_queries'] = true;
}


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#8 2009-05-23 21:07:10

vimages
Membre
2004-03-27
2429

Re: [Piwigo BDD] optimisation de la BDD

VDigital a écrit:

Je fais 2/3 essais en local et je te dis.
Le disque...
(Je ne sais pas ce que tu as)
mais je pense que cela n'a rien à voir avec les moyens mis en oeuvre chez des hébergeurs.
;-)

ok...

et oui bien sur.....

Hors ligne

#9 2009-05-23 21:15:59

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: [Piwigo BDD] optimisation de la BDD

J'installe Multi-view et je l'active.
;-)


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#10 2009-05-23 21:19:30

vimages
Membre
2004-03-27
2429

Re: [Piwigo BDD] optimisation de la BDD

c'st fait

Hors ligne

#11 2009-05-23 21:20:52

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: [Piwigo BDD] optimisation de la BDD

[0.377 s, 78 queries] : end include/category_default.inc.php

Et une en plus pour obtenir ton email adresse.

Le pb add to caddy lance une ou plusieurs requête par miniature.
=> logique à revoir par qui tu sais...

;-)


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#12 2009-05-23 21:21:30

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: [Piwigo BDD] optimisation de la BDD

Je désactive Multi-view.

;-)


Done.


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#13 2009-05-23 21:23:42

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: [Piwigo BDD] optimisation de la BDD

Donc ton plugin userCaddy est à revoir.


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

#14 2009-05-23 21:29:00

vimages
Membre
2004-03-27
2429

Re: [Piwigo BDD] optimisation de la BDD

oui... mais comment être sur que c'est lui qui ralenti l'affichage ?


(t'as skype je crois..)?

Hors ligne

#15 2009-05-23 21:46:53

VDigital
Former Piwigo Team
Montpellier (FR)
2005-05-04
15127

Re: [Piwigo BDD] optimisation de la BDD

Ré-active Multi-View

Va sur une page de miniatures...
Sur le "Controller" avec 2 L

Show SQL queries

Il recharge la page...
Va lire les 79 requêtes.

"Bonjour les count(*) !!!"

Pour moi c'est clair... A remplacer par une (ou deux) requête(s) qui retournera(ont) en 1 seule fois toutes les réponses.
;-)


Vincent -« Plus vidéaste averti que photographe amateur... »
La galerie - Le blog   

Piwigo est une application libre de gestion de photos en ligne.

Hors ligne

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact