Re: Cache, POST et co

pierre laszczak <[email protected]>
Newsgroups gmane.comp.web.spip.devel
Message-ID <CAKNND-07NHt1dFkoCptc_0wUQ4PVRju=oGuNK+efnbAXoeW5zg@mail.gmail.com>
Hello,

Je pense qu'il faut éviter le cache sur les POSTS

Quelle est la solution la plus propre pour éviter ce problème ?

- Optimiser les filtres et s'appuyer le plus possible sur sql..
- Tu peux également essayer de découper ta liste en faisant un inclure
d'item pour que chaque item ai son propre cache contrairement à la liste.
La chute des performance est souvent liée a une fonction récursive dans
chaque item.



Le jeu. 15 avr. 2021 à 15:08, Maïeul <[email protected]> a écrit :

> Le 15/04/2021 à 13:46, Maïeul Rouquette a écrit :
> > Bonjour,
> >
> > j'ai une question concernant la gestion du cache.
> >
> > ## Contexte
> >
> > recherche d'amélioration des perfs de formidable table sorter
> >
> > ## Explication du processus
> >
> > Formidable tablesorter envoie une requete AJAX pour récupérer un fichier
> > JSON contenant les données à afficher. Cette requete est un peu longue,
> > car elle contient des infos sur les filtres, tri, etc. Par conséquent
> > impossible de l'envoyer en GET, mais uniquement en POST, bien que cela
> > n'influence nullement le contenu de la base, mais uniquement le résultat
> > du fichier json.
> >
> > Ce fichier JSON est généré via différentes fonctions, qui, ultimement,
> > appellent `calculer_voir_reponse`, une fonction de formidable.
> >
> > Cette dernière se base sur les squelettes saisies-vues./*.html pour
> > montrer les résultats pour afficher la valeur correctement formaét,
> > champ par champ et réponse par réponse.
> >
> > ## Problème
> >
> > Comme j'envoie ma requete en POST (car paramètres potentiellement très
> > long), je n'ai pas de cache (c'est prévu explicitement dans SPIP).
> >
> > J'ai testé pour voir avec GET, sur un formulaire avec pas mal de
> > réponse, on passe de 4 s à 100ms de temps d'attente avant que le serveur
> > renvoie sa réponse.
> >
> > ## Question
> >
> > Quelle est la solution la plups propre pour éviter ce problème ?
> >
> > Merci d'avance pour vos éclairages
> >
> > ## Remarque
> >
> > J'ai n'ai aucun souci de cache obsolète car
> >
> > 1. Si on modifie une réponse de formulaire via le tableau, bah il y une
> > invalidation générale du cache
> > 2. Comme dit, ma requete AJAX en elle même n'implique pas de
> > modification en base
> >
> >
> > Maïeul
> >
> j'ai bien songé à mettre
>
> if ($_SERVER['REQUEST_METHOD'] == 'POST' and $_REQUEST['page']  ===
> 'formidable_ts.json') {
>         $_SERVER['REQUEST_METHOD'] = 'GET';
> }
>
>
> dans mes_options.
>
> Cela marche, mais c'est un peu moche.
> _______________________________________________
> liste: https://listes.rezo.net/mailman/listinfo/spip-dev
> doc: https://www.spip.net/
> dev: https://core.spip.net/
> irc://irc.freenode.net/spip
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.