Annonce

#1 2021-07-01 12:18:02

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

[12.x] explications sur le lounge

Bonjour à tous,

Nous venons de recevoir un email (via le formulaire de contact) demandant des détails de fonctionnement sur la nouveauté technique apportée par le "lounge" dans Piwigo 12. Je vais répondre ici pour les explications générales, histoire que tout le monde puisse retrouver l'info publiquement.

Le problème qu'on cherche à résoudre, c'est l'augmentation exponentielle de la charge serveur dans le cas de figure suivant :

* grosse galerie, c'est à dire plusieurs dizaines voire centaines de milliers de photos
* ajout de photos à rythme important

Depuis Piwigo 2.0 et son pLoader en 2009, lorsqu'on ajoute des photos, chacune est ajoutée indépendamment des autres et cela provoque la réinitialisation du cache utilisateur. Dès l'ajout de la photo suivante, ce cache est reconstruit. C'est problématique car le cache utilisateur peut, selon le nombre de photos dans la galerie, prendre 5 à 10 secondes pour être reconstruit. Si on ajoute 3 photos par seconde, ça part en vrille.

On ne peut pas remettre en cause l'existence du cache utilisateur. Il permet d'accélérer fortement un tas de choses.

Le fonctionnement du lounge est le suivant : au lieu d'associer la photo à son album, elle est mise dans un espace d'attente (confortable et plaisant, rassurez-vous). Ainsi, le cache n'est pas supprimé et n'a donc pas besoin d'être systématiquement reconstruit. Le lounge est vidé à 2 occasions :

1) à la fin de l'ajout du lot de fichier. Concrêtement si vous ajoutez 15 photos via le formulaire web d'ajout de photos, les 15 photos iront une par une dans le lounge, et une fois que les 15 seront transférées, le lounge sera vidé.

2) s'il y a des fichiers dans le lounge qui attendent plus de 5 minutes (configurable)

L'idée du lougne est donc de réduire le nombre de recalcul du cache utilisateur.


Historiquement, premier utilisateur connu de Piwigo ;-)

Hors ligne

Pied de page des forums

Propulsé par FluxBB

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