Aller au contenu

CodeIgniter et scope application


MarvinLeRouge

Sujets conseillés

QU'apelle tu des variables de portée application ? (si c'est une globale, $GLOBALS, comme en PHP ..; mais j'ai des doutes sur ton utilisation).


Ou alors il s'agit de constante, et tu as un fichier dans la conf où les stocker, de mémoire.


Lien vers le commentaire
Partager sur d’autres sites

Non, je parle de variables, qui une fois définies sont accessibles pour tout le monde avec les mêmes valeurs. Donc, si la personne A et la personne B sont sur le site, ils voient les mêmes valeurs de variables, mais elles n'auraient été récupérées qu'une fois (afin d'éviter des requêtes sql inutiles). C'est un peu le principe de ce qu'on récupérerait d'un fichier de config, sauf que là c'est stocké en bdd, récupéré une fois pour tous les utilisateurs, et doté d'un système d'invalidation. Je suppose que ça pourrait être basé sur des fichiers côté serveur, genre un super-fichier de session.


Lien vers le commentaire
Partager sur d’autres sites

Alors, je me répète, mais soit c'est des constantes, et c'est dans le fichier de constantes, soit c'est des données variables partagées et à ce moment là ça n'existe pas en PHP nâtif (pas plus avec codeigniter qu'un autre framework).


Tu parles de partager des variables entre plusieurs sessions utilisateurs. Les variables globales ne conviennent pas car leur portée est limitée à l'exécution du script en cours. Si tu cherches à partager des données sur plusieurs processus, regarde du côté des sémaphores http://fr2.php.net/manual/fr/intro.sem.php.



Mais franchement, je suis curieux de savoir quelles données tu peux avoir envie de partager pour gagner en performance par rapport à MySQL.



PS : si une requête met du temps à répondre parce qu'elle est particulièrement couteuse et récurrente, il y a aussi memcache http://www.php.net/manual/fr/book.memcached.php


S'il s'agit d'affichage, varnish.


Lien vers le commentaire
Partager sur d’autres sites

Pour la nature des variables, je pensais à tout ce qui change assez peu côté bdd (typiquement, un ACL dans lequel les droits d'accès ne changent pas toutes les 3 secondes).


Bon ben du coup ça va être du caching sql / php / html. Plus une vue derrière mise à jour automatiquement histoire de simplifier les requêtes sql.


Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...