+ Auf Thema antworten
Zeige Ergebnis 1 bis 2 von 2

Thema: Memcache mit PHP benutzen

  1. #1
    Administrator kadder is on a distinguished road Benutzerbild von kadder
    Registriert seit
    07.2003
    Ort
    Fürth
    Beiträge
    3.361

    Memcache mit PHP benutzen

    Memcache bzw. Memcached dient dazu, häufig benutze Daten im RAM zu halten und Mysql-Zugriffe zu sparen. Hier ein einfaches Beispiel, welches auch für die PCTweaks.de-News-Seite benutzt wird:

    PHP-Code:
    $ergebnis_mem memcache_get($memcache$sid);
            if(!
    $ergebnis_mem) {
            
    $anfrage mysql_query("SELECT * FROM pctweaks_news WHERE sid = $sid");        
            
    $cache mysql_fetch_array($anfrage);
            
    memcache_set($memcache$sid$cacheMEMCACHE_COMPRESSED'60');
            
    $ergebnis_mem memcache_get($memcache$sid);
            } 
    Zuerst wird $ergebnis_mem mit dem Inhalt des Memcaches der jeweiligen ID befüllt. Bleibt die Variable leer (es ist also nichts im RAM) wird die Mysql-Anfrage gestartet, die die Daten holt. memcache_set() packt die Daten mit einer Haltbarkeit von 60 Sekunden in den RAM und speichert sie dabei on-the-fly mit gzip. Danach (und das ist wichtig) wird $ergebnis_mem mit den eben gesetzten Daten gefüttert und steht dann zur Verfügung.

    Die 60s können natürlich auch höher gesetzt werden, allerdings muss dann darauf geachtet werden, dass beim ändern eines Eintrags (in diesem Fall einer News) auch das entsprechende Memcache-Item aktualisiert wird:

    PHP-Code:
    $anfrage mysql_query("SELECT * FROM pctweaks_news WHERE sid = $sid");        
            
    $cache mysql_fetch_array($anfrage);
            
    memcache_replace($memcache$sid$cacheMEMCACHE_COMPRESSED'60'); 
    Hier braucht nicht darauf geachtet werden, ob die Daten bereits vorhanden sind, mittels memcache_replace() werden sie sowieso überschrieben.

    Als IDs für Memcache werden jeweils die Artikel-IDs (sid) verwendet.
    Mfg, kadder

    "instant human - just add coffee!"
    - ich lebe Web-2.0, follow me on twitter

  2. #2
    Einmal Poster smithlanger is on a distinguished road
    Registriert seit
    04.2010
    Beiträge
    1
    sounds good to me
    braindumps are available for mcse and mcitp and microsoft exam questions

+ Auf Thema antworten

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Ähnliche Themen

  1. Ohne MediaCenter FB benutzen?
    Von MUSIC3K im Forum Anwendungen
    Antworten: 1
    Letzter Beitrag: 17.01.2009, 22:45
  2. DVD Brenner als DVD Laufwerk benutzen?
    Von DotwinX im Forum Hardware
    Antworten: 2
    Letzter Beitrag: 21.10.2008, 00:02
  3. XP Professional mit Key des Bekannten benutzen?
    Von Chris im Forum Betriebssysteme
    Antworten: 4
    Letzter Beitrag: 21.01.2005, 20:32
  4. Welchen Werbeblocker benutzen?
    Von XLAA im Forum Anwendungen
    Antworten: 15
    Letzter Beitrag: 20.10.2004, 18:46
  5. Inofizieller Detonator benutzen ?
    Von Striker im Forum Anwendungen
    Antworten: 6
    Letzter Beitrag: 07.08.2003, 17:17

Stichworte

Forumregeln

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
Overclocking.at - News, Hardware, Tests |  PCTweaks.de | Filegetter.de | Androidweb.de | ilovegaming.de

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29