Bonjour à tous,
Je travail sur un nouveau moteur de site et j'aimerais le doter d'un système de cache d'objets. Genre fichiers dictionnaires, config des modules et actions, statistiques. Et ce dans le but d'économiser des accès disques ou DB.
J'ai 2 pistes et j'aimerais avoir votre avis:
1. Créer une session partagée : Je ne sais pas trop comment le faire mais je suppose que je peux crée une session avec un id définit et ensuite pouvoir accéder via session[id][monobjet] depuis n'importe quel appel d'un utilisateur
2. serialize + mysql (MEMORY (HEAP))
Stocker dans une table mémoire mes objets serializés.
Quelles solution est la meilleure ?
Dans la solution 1 (session), les données sont en mémoire ou dans un fichier text ?
La solution 2 me semble plus performant mais quid de la performance de serialize ?
Une des différences est que si j'ai 1.000 connections sumultanée avec la solution 2, j'aurai 1.000X l'objet en mémoire et l'objets ne seras vraiment modifié qu'une fois l'objets remis en mémoire. Tandis qu'avec la solution 1... l'objets n'est présent qu'une seule fois.
La plus part des objets stockés ne seront pas souvent modifiés. Dico, pramaètre des modules. Cela se fera via la partie administration. Mais pour les stats... là il y aura modification. Je peux très bien utiliser 2 type de système de cache mais bon je préferais un seul.
Merci pour vos avis !
Partager