Re: beaucoup de sessions
erational <[email protected]>
| Newsgroups | gmane.comp.web.spip.devel |
|---|---|
| Organization | secret society of rational thoughts |
| Message-ID | <[email protected]> |
Cool ! J'ai ouvert une page perf sur le wiki https://contrib.spip.net/Astuces-Perf bonne soirée à tou(te)s Le 04/04/2020 à 17:55, Cerdic a écrit : > Oui une bonne pratique perf c’est de stocker les sessions PHP dans une > db sqlite, ce qui se fait via le php.ini : > |session.save_handler =sqlite session.save_path ="/path/sessions.db"| > > -- > Cédric > Le 4 avr. 2020 à 16:39 +0200, Fil <[email protected]>, a écrit : >> hello, >> >> sur le site du diplo on s'est trouvés avec un répertoire de sessions >> comportant 100000 fichiers et plus, et du coup je me suis rendu >> compte que preg_files est très lent (le temps de recherche des >> sessions de l'auteur en train de se loger est > 30s et la page part >> en timeout). >> >> du coup réparation dans l'urgence de inc/session : >>     // liste des sessions >> -    $sessions = preg_files(_DIR_SESSIONS, '/' . $id_auteur . >> '_.*\.php$'); >> +    $sessions = glob(_DIR_SESSIONS . $id_auteur . '_*.php'); >> >> >> Une des causes de l'énorme nombre de sessions, c'est que lors du >> passage à SPIP 3 les sessions anonymes autrefois gérées par SPIP sont >> devenues des sessions PHP ; >> mais quand tu en as des 100 000, ça fait des 100k fichiers, SPIP ou >> PHP c'est pareil de ce point de vue (et moi j'ai fait l'erreur >> d'indiquer à PHP de stocker ses sessions dans le répertoire des >> sessions spip) >> >> Bruno signale >> https://git.spip.net/spip/spip/pulls/21 >> mais ici je souligne que les sessions anonymes sont légitimes et >> qu'on ne veut pas les effacer juste pour nettoyer, au risque de >> déconnecter des tas de gens. >> >> Le fond du problème c'est (peut-être?) qu'il faudrait gérer les >> sessions dans une petite base sqlite ; c'est pas un gros dev mais il >> faut être bien armé mentalement pour s'y attaquer :) >> >> Ou alors, il existe peu-être un module apache-php qui met les >> sessions en sqlite mais je ne l'ai pas trouvé. >> >> >> _______________________________________________ >> liste: https://listes.rezo.net/mailman/listinfo/spip-dev >> doc: https://www.spip.net/ >> dev: https://core.spip.net/ >> irc://irc.freenode.net/spip > > _______________________________________________ > liste: https://listes.rezo.net/mailman/listinfo/spip-dev > doc: https://www.spip.net/ > dev: https://core.spip.net/ > irc://irc.freenode.net/spip -- _________________________________________ https://www.erational.org