Mezipaměť je obecně velmi rychlý modul úložiště klíč/hodnota, kde můžete ukládat hodnoty (obvykle serializované) pomocí předem určeného klíče, takže uložené hodnoty můžete načíst pomocí stejného klíče.
Ve vztahu k MySQL byste kód své aplikace napsali tak, že byste před odesláním požadavku do databáze zkontrolovali přítomnost dat v mezipaměti. Pokud by byla nalezena shoda (odpovídající klíč existuje), budete mít přístup k datům spojeným s klíčem. Cílem je nevydávat požadavek do dražší databáze, pokud se tomu dá vyhnout.
Příklad (pouze demonstrativní):
$cache = new Memcached();
$cache->addServer('servername', 11211);
$myCacheKey = 'my_cache_key';
$row = $cache->get($myCacheKey);
if (!$row) {
// Issue painful query to mysql
$sql = "SELECT * FROM table WHERE id = :id";
$dbo->prepare($sql);
$stmt->bindValue(':id', $someId, PDO::PARAM_INT);
$row = $stmt->fetch(PDO::FETCH_OBJ);
$cache->set($myCacheKey, serialize($row));
}
// Now I have access to $row, where I can do what I need to
// And for subsequent calls, the data will be pulled from cache and skip
// the query altogether
var_dump(unserialize($row));
Podívejte se na dokumenty PHP na memcached pro více informací je zde několik dobrých příkladů a komentářů.