Ishido a écrit:
@Plg, j ai regardé la Galerie, il y a que 623 photos ?
623 publiques, mais 86k en tout. Mais l'important c'est bien qu'on a des tables avec beaucoup de lignes. C'est cela qui "peut" ralentir. En l'occurence, 86k c'est pas grand chose. Si on parlait de 1 million de photos, là peut-être qu'il y aurait des optimisations à faire, mais c'est un autre ordre de grandeur, rarement atteint dans un Piwigo.
Hors ligne
Je vais essayer d'être plus précis dans ce que je dis :
- lorsque MySQL doit faire des GROUP BY/DISTINCT, il doit créer des tables temporaires. Si max_heap_table_size et tmp_table_size sont trop petits, alors il a copier ces tables temporaires de la mémoire vers le disque dans le dossier temporaire de MySQL ( tmpdir ). Tu te doutes bien que si il les mets sur disques, la requête sera bien plus lente : tu es I/O bound et non CPU bound dans ces cas.
http://dev.mysql.com/doc/refman/5.5/en/ … ables.html
http://www.percona.com/blog/2007/08/16/ … ry-tables/
- Si tu as pleins de RAM, tu peux passer /tmp en tmpfs ( ramdisk ) et donc même si tes valeurs de max_heap_table_size et tmp_table_size sont trop petites, il va créer des tables temporaires dzans /tmp qui est ... en RAM :D une ramdisk dont l taille est la moitié de ta RAM au max me semble raisonnable avec 16Go de RAM
http://dba.stackexchange.com/a/29638
Après tout dépend bien sûr du nombre d'albums et de photos, car plus tu as d'albums, plus ta jointure entre piwigo_images et piwigo_image_categories sera consommatrice. De plus les requêtes les plus lourdes ne sont lancées que sur certaines pages spécifiques. Cependant je pense qu'avec suffisamment de RAM et un MySQL correctement configuré, Piwigo scale très très bien avec le nombre de photos, même si des choses pourraient être améliorées.
Après pour les ralentissements quand tu as des uploads, cela peut avoir différentes origines.
En tout cas une synchronisation après upload FTP est super rapide à faire, et surtout cela n'invalide le cache des requêtes de MySQL qu'une fois. à contrario, si tu ajoutes photos par photos, le cache de requête de MySQL doit être invalidé à chaque fois : http://www.taos.com/2013/04/10/understa … ery-cache/
Hors ligne
Bonsoir,
Je ne sais pas si la réponse est pour moi, mais si c'est le cas, petite précision, je suis pas un codeur truc bidule, c'est donc du Chinois la réponse :-) Mais ça sera utile pour ceux qui comprenne ^^
En lisant la fin de ta réponse, j en déduis que tu parles bien de ralentissement pendant la navigation et non pendant l'upload d'images.
Merci :-)
Dernière modification par Ishido (2014-11-05 01:43:55)
Hors ligne