J'ai eu l'idée suivante: Dites que nous avons une webapp écrite en utilisant django qui modélise un tableau d'affichage. Ce forum a beaucoup de threads mais quelques-uns d'entre eux obtiennent le plus de messages/vues par heure. Les pages de filetage sont légèrement différentes pour chaque utilisateur. Vous ne pouvez donc pas mettre en cache la page de rendu dans son intégralité et mettre en cache uniquement certaines parties de la page de rendu n'est pas non plus une option.Object stocker des objets dans Django entre les demandes
Mon idée était la suivante: je crée une structure d'objet du thread en mémoire (avec chaque message et autres données nécessaires pour l'afficher). Si un nouveau message est posté, la structure est mise à jour et chaque X messages (ou toutes les Y minutes, tout ce qui vient en premier) les nouveaux messages sont réécrits dans la base de données. Si l'application se bloque, certains messages sont perdus, mais cela est tout à fait correct (pour les utilisateurs et les administrateurs).
La question: Puis-je créer un tel stockage persistant dans la mémoire sans sérialisation (donc pas serialize-> memcached)? Si je comprends bien, les applications WSGI (comme Django) s'exécutent en continu sans interruption entre les requêtes, ce qui devrait donc être possible en théorie. Y a-t-il une API que je pourrais utiliser? Si non: un point à regarder?
/edit1: Je sais que "persistante" a habituellement une signification différente, mais dans ce cas je signifie strictement "entre demande".
Qu'est-ce qui ne va pas avec la sérialisation? Avez-vous profilé votre application? La base de données I/O est-elle le goulot d'étranglement? –