Bonjour,
Ayant à mettre en place spip-listes sur une base de 5000 abonnés sur 130.000 visiteurs, le modèle utilisé pour la gestion des abonnés s'est immédiatement avéré impossible: plusieurs minutes pour charger une page quand ce n'était pas dépassement mémoire ou temps imparti au PHP.
J'ai du donc refondre quasi complètement les requètes utilisées. Essentiellement, on ne charge plus l'ensemble des auteurs mais uniquement la "tranche" demandée ou on utilise des requètes "groupées".
Je suis à peu près au top, je ne vois que la requete pour rechercher les types d'abonnement qui pourrait être encore hackée, mais au prix d'un LIKE pour chercher dans la valeur sérialisée du champs extra ... ça ne me plais guère ... mais je vais sans doute essayer.
Il serait possible d'obtenir bien mieux en sauvegardant dans une session les paramètres globaux de la page ... mais là, ça représente un certain volume de code 
J'y réfléchis, et/ou une ajaxisation (crayons ?) de la gestion.
Ça fera peut-être un mini-labo pour la gestion des visiteurs du core dont les résultats ne sont guère plus glorieux sur cette base...
Quoiqu'il en soit, sans qu'aucune fonctionnalité ne soit alterée, on passe maintenant en moins de 10 secondes sur ma pauvre machine de test.
A part cette refonte et quelques nettoyages/corrections,
j'ai mis en place ou réactivé/réparé:
* si tri par nom et interface privée avancée (le défaut), une barre d'initiales pour naviguer rapidement comme dans le core pour auteurs
* on cherche par email dès que la chaine cherchée contient @ et non plus seulement si c'est un email valid, par exemple, "@toggg" donne tous les abonnés dont l'email contient "toggg"
* c'était nécessaire pour la recherche, on peut maintenant utiliser le caractère % pour enclencher un LIKE et donc ne parcourir qu'un sous-ensemble des auteurs (sinon mots_ressemblants() explose)
Par exemple, pour chercher plus économiquement tous les auteurs avec "gg" dans le nom, entrer : "%gg%" exactement comme un LIKE sql.
Ca marche pareil pour les email, "%@toggg%" sera bien plus efficace, ne prendra par contre plus que ceux ayant "toggg" en début de host.
Je vous prie donc par la présente de bien vouloir vérifier si j'ai bien tout pété 
Par ailleurs, je vais devoir refaire le tableau de pagination, avec 130.000 sujets il fait plusieurs pages lourdes et quasi inutilisables.
Je pense éventuellement le transformet en un select autosubmit, ça sera moins lourd.
Aussi, dès que la population devient trop importante réduire l'affichage en ne mettant plus que des points comme
0 . . . . 150 . . . . 300
au lieu de
0 | 30 | 60 | 90 | 120 | 150 | 180 | 210 | 240 | 270 | 300 |
voire même:
A . . . B . C . . . . . D . . . . E . F G . H I L . . .
qui condenserait la barre d'initiale tout en donnant une meilleure lisibilité de la liste.
Merci pour tout commentaire ou autre idée/besoin que vous pourriez avoir.
J'attaque la partie envois par elle même, ça risque encore de grincher 
--
toggg