Projet

Général

Profil

Development #9932

Cache paresseux de package_version

Ajouté par Benjamin Dauvergne il y a environ 8 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
10 février 2016
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Fichiers


Demandes liées

Lié à Hobo - Development #9821: Accélérer le traitement des notificationsFermé01 février 2016

Actions
Lié à Combo - Development #14621: ne pas se contenter du cache paresseux des versionsFermé16 janvier 2017

Actions

Révisions associées

Révision 35bfbd91 (diff)
Ajouté par Frédéric Péters il y a plus de 7 ans

misc: isolate statics_hash in its own context processor (#9932)

The benefit is to delay loading packages versions until they are
required.

Historique

#2

Mis à jour par Benjamin Dauvergne il y a environ 8 ans

#3

Mis à jour par Frédéric Péters il y a environ 8 ans

En fait ça n'a pas été fait comme ça parce qu'on ne veut pas non plus pénaliser la première requête. Ce qu'il faudrait c'est du code exécuté au démarrage mais pas pour les commandes de management (et j'écris ça sans être trop sûr de la possibilité, évidemment).

#4

Mis à jour par Frédéric Péters il y a environ 8 ans

À réfléchir ici je me dis que ce code (ou en tout cas l'appel au code de mise en cache des versions) pourrait se faire dans le wsgi.py. Non ?

#5

Mis à jour par Benjamin Dauvergne il y a environ 8 ans

Frédéric Péters a écrit :

En fait ça n'a pas été fait comme ça parce qu'on ne veut pas non plus pénaliser la première requête. Ce qu'il faudrait c'est du code exécuté au démarrage mais pas pour les commandes de management (et j'écris ça sans être trop sûr de la possibilité, évidemment).

Tu dis toi même que ça ne prend qu'1s, c'est quoi l'intérêt de gagner cette seconde sur la première requête après le lancement d'1 worker gunicorn ?

#6

Mis à jour par Benjamin Dauvergne il y a environ 8 ans

Frédéric Péters a écrit :

À réfléchir ici je me dis que ce code (ou en tout cas l'appel au code de mise en cache des versions) pourrait se faire dans le wsgi.py. Non ?

#8

Mis à jour par Frédéric Péters il y a environ 8 ans

Tant qu'à pouvoir éviter le risque d'une requête lente à un client, je préfère.

#10

Mis à jour par Frédéric Péters il y a plus de 7 ans

J'ai réfléchi à nouveau à ça (suite à #14616) et ma conclusion du jour c'est qu'on peut en fait avoir un cache paresseux pour toutes les applications sauf combo (où les informations de versions sont utilisées pour toutes les pages via statics_hash); et donc, ici, solution simple. Et dans combo un hack pour charger dès le début les versions.

#11

Mis à jour par Frédéric Péters il y a plus de 7 ans

#12

Mis à jour par Frédéric Péters il y a plus de 7 ans

En fait ça ne suffit pas parce que template_vars est chargé par toutes les applications au moment des requêtes.

#13

Mis à jour par Frédéric Péters il y a plus de 7 ans

Déplacement du statics_hash dans son propre context processor, qui sera utilisé uniquement par combo.

#14

Mis à jour par Thomas Noël il y a plus de 7 ans

Ack

#15

Mis à jour par Frédéric Péters il y a plus de 7 ans

  • Statut changé de Nouveau à Résolu (à déployer)
commit 35bfbd91db42fe34bdf4ef14fff50e8f55e43158
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Mon Jan 16 13:49:34 2017 +0100

    misc: isolate statics_hash in its own context processor (#9932)

    The benefit is to delay loading packages versions until they are
    required.
#16

Mis à jour par Frédéric Péters il y a plus de 5 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF