Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Hello tout le monde,
sur mon application, j 'attaque à présent le système de cache, mais je me heurte à quelques questions.
Dans l'appli il y a des portions de code qui ne doivent être caché, 
exemple: sur les fiches du site, je souhaite montrer le nombre de fois ou la fiche a été vue. Donc par conséquent je supposé prendre Zend_Cache_Core.
Dans un autre endroit, j'ai un moteur de recherche ou l'url est construite dynamiquement.
Par exemple:
monsite.com/search/
monsite.com/search/cat1/
monsite.com/search/cat1/ss_cat1/
monsite.com/search/cat1/ss_cat1/...
toutes ces requetes appel 1 et 1 seul controlleur. Donc par simplicité je pensais utiliser Zend_Cache_Frontend_Page. 
Donc est il possible de mixer un système de cache Zend_Cache_Core et Zend_Cache_Frontend_Page dans une même application ? si oui comment ? et selon vous est ce une approche correcte ou completement loufoque et dans ce cas utiliser uniquement Zend_Cache_Core.
d'avance merci
Dernière modification par bucheron (12-08-2008 14:58:55)
Hors ligne
bootstrap:
       // Cache setup
    $cache1 = Zend_Cache::factory(
        $config->cache1->zend->frontend->type,
        $config->cache1->zend->backend->type,
        $config->cache1->zend->frontend->options->toArray(),
        $config->cache1->zend->backend->options->toArray()
    );config ini:
    [cache1]
        zend.frontend.type = "Core"
        zend.frontend.options.lifetime = 86400 ; 2 Hours
        zend.frontend.options.automatic_serialization = true
        
        zend.backend.type = "File"
        zend.backend.options.cache_dir = "./cache/"Dernière modification par lethak (12-08-2008 12:05:18)
Hors ligne
je comprend pas trop l'aide fournit.
La question est de savoir si il est possible de coexister 2 systèmes de cache.
Hors ligne
Oui tu peux utiliser autant de cache que tu veux et n'importe ou te faire un plugin
Sinon utilise  Zend_Cache_Frontend_Output pour cacher seulement des blocs et non toute la page.
http://framework.zend.com/manual/fr/zen … nds.output
Pour cacher des requetes tu peux utiliser le cache n'importe ou, j'utilise le module APC comme ceci 
$cache = Zend_Cache::factory('Core','APC',array('lifetime'=>7200,'automatic_serialization'=>true),array());
Il te faudra par contre l'installer toi même le module APC.
Hors ligne
@lethak ok je vois
@alien7 je comprend pour l'output mais quel est l'intéret d'utiliser APC ? n'est ce pas quasi la même chose que l'output de zend mais coté apache ?
Hors ligne
@alien7 ok je crois que je me suis embrouiller les pinceaux.
je pensais que j'utilisais le Zend_Cache_Frontend_Output pour un bloc avec des variables, exemple:
if (!$cache->start('index')) {
            echo 'Hello world! ';
         
        $jeux = new Jeux();
        $this->view->bestGames   = $jeux->getListGame();
                 ...
                $cache->end(); 
}Or lors du prochain passage la variable ne sera pas affecté.
Donc a présent si j'ai bien compris il veut mieux que j'utilise le zend_cache_core ? mais cela va m'alourdir le code considérablement si je dois "cacher" toutes les variables . N'y a t'il pas un moyen d'utiliser le Zend_Cache_Frontend_Page mais en spécifiant que certaines parties du document ne doivent jamais être caché ?
Est ce que vous me suivez ?
Dernière modification par bucheron (12-08-2008 12:06:43)
Hors ligne
Est ce que le sparti que tu ne veux pas cacher corresponde à des action de ton controlleur ?
Si oui essaye ca de voir avec ce tuto :
http://julien-pauli.developpez.com/tuto … _2#LII-D-2
Comment dire de ne pas mettre en cache telle ou telle requête ? L'attribut statique $doNotCache est là pour cela : 
My_Plugin_Caching::$doNotCache = true;
Le module APC met le cache en memoire alors que Zend_Cache_Frontend_Output crée un fichier dans le dossier cache que tu lui specifie.
Hors ligne
En effet le tuto de julien correspond à ce que je recherche 
)))
Je l'ai mis en place et a priori cela fonctionne reste à faire quelques testes en profondeur et le tour est joué.
Merci pour votre aide 
)))))))))
Hors ligne
Pages: 1