Performances recherches / construction de la liste
pabuisson opened this issue · comments
Bonjour bonjour,
Ces temps-ci, je suis venu assez souvent sur le site, et j'ai pu remarquer qu'avec l'augmentation du nombre de sons, la recherche commence à être peu réactive, c'est en particulier sensible sur mobile. Je commence à taper, la première lettre s'affiche, ça bloque, et ensuite la fin de ce que j'ai tapé s'affiche subitement.
J'ai jeté un oeil au code derrière et, bien que ne connaissant pas backbone, le problème semble venir de la façon dont la liste de sons est créée : lorsqu'on filtre, tous les sons visibles sont détruits, puis ceux qui doivent être affichés après filtrage sont recréés. Sur une liste de 600+ sons, ça semble être trop... et plus on ajoutera de sons, pire ce sera.
Des choses ont déjà été envisagées pour améliorer les perfs ? J'ai en tête :
- Paginer les items et charger les pages au scroll (pour en charger/construire moins d'un coup),
- Débouncer la recherche,
- Mettre à jour certaines dépendances peut-être ?
- Ou carrément revoir la façon dont la collection de sons est filtrée ?
Je peux envisager de faire quelques PR dans les semaines qui viennent si vous êtes partants.
J'ai pas l'historique du projet mais juste faire le debouncer me semble être assez rapide à mettre en place avec un minimum d'effort, à voir si ça améliorer assez les performances.
J'ai pas l'historique du projet mais juste faire le debouncer me semble être assez rapide à mettre en place avec un minimum d'effort, à voir si ça améliorer assez les performances.
J'avais commencé à le faire, ça semblait effectivement simple même sans connaissance de Backbone, je peux toujours faire une PR
En effet, avec le nombre maintenant important de sons, la recherche est impactée.
C'est Hacktoberfest, les PR sont encouragées 😊