IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Autres composants PHP Discussion :

Cache de base de données avec Zend


Sujet :

Autres composants PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mars 2007
    Messages : 79
    Par défaut Cache de base de données avec Zend
    Bonjour à tous,

    Je cherche un moyen de cacher le contenu de ma base de donnée MySQL avec Zend Framework. J'ai vu quelques articles qui parle de Zend_cache mais pas avec une base de données MySQL.

    Quelqu'un aurait un tutorial qui présentait un moyen performant de cache de Base de Données MySQL ?

    merci d'avance

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 505
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 505
    Par défaut
    Que veux-tu faire exactement?

    Mettre en cache le résultat d'un query ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mars 2007
    Messages : 79
    Par défaut
    oui tout à fait, je veux que le résultat de mes SELECT soient en cache. J'ai lu de la doc sur les différents cache (par fichier, par memcached, par ACP, ...). Toutes ces solutions sont implémentées par le framework Zend.

    Ce qui me pose problème est que je ne sais pas comment on peut faire pour être sûr de ce qu'on a en cache, est bien la dernière version en base de données.

    J'ai lu sur un blog, une solution qui consistait de créer une table qui comporte les heures de modifications de la base de données (alimenter par des triggers sur les autres tables) et d'interroger cette table pour vérifier si la version en cache est bien la dernière version.

    Est-ce une bonne solution ? Y a-t-il d'autres solutions plus performantes ?

  4. #4
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 505
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 505
    Par défaut
    La meilleur façon de recevoir les données dernièrement insérer est de relancer la requêtes(sic).

    Ce que tu proposes est une solution, une autre serait simplement de limiter la vie du cache.

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 178
    Par défaut
    Hello,

    Effectivement, se retrouver à requêter pour savoir si le cache a expiré, ça se mort un peu la queue

    Par contre, dans les cas simples tu peux invalider le cache lorsque tu sais que ta base change si c'est ton code qui fait des inserts ou des updates.

    Ca revient à piloter la vie du cache par l'édition des données.

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2009
    Messages
    383
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 383
    Par défaut
    J aimerais aussi ajouter que tu peux utiliser le cache avec des tags.

    Ainsi, par exemple, tu crées le cache avec les tags : "NEWS","NEWS_5".

    Lors d'un update de la news numero 5, tu peux facilement invalider tous les caches qui seraient lié au contenu de cette news.

    http://framework.zend.com/manual/en/...he.theory.html

Discussions similaires

  1. meilleure base de données avec java
    Par mial dans le forum JDBC
    Réponses: 11
    Dernier message: 10/11/2010, 11h49
  2. Problème de base de données avec Zend exception PDO
    Par websurfeur dans le forum Zend Framework
    Réponses: 8
    Dernier message: 20/04/2007, 16h49
  3. Récupérer ma base de donnée avec des tables en .frm uniqueme
    Par Michas dans le forum Administration
    Réponses: 5
    Dernier message: 31/08/2005, 13h57
  4. création base de données avec easyphp
    Par Battosaiii dans le forum Débuter
    Réponses: 5
    Dernier message: 29/06/2004, 18h50
  5. Modifier le nom d'une base de donnée avec erreur sy
    Par mmn dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 25/11/2003, 10h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo