<?php // 1. Memcached 연결 $memcache = new Memcached(); $memcache->addServer("127.0.0.1", 11211);
// 2. 캐시 키 정의 $cache_key = "user_list_v1"; $cache_ttl = 300; // 5분 (초 단위)
// 3. 캐시에서 데이터 확인 $cached_data = $memcache->get($cache_key);
if ($cached_data !== false) { // 캐시된 결과 사용 echo "From Cache:<br>"; $users = json_decode($cached_data, true); } else { // 4. DB 연결 $pdo = new PDO("mysql:host=localhost;dbname=testdb", "dbuser", "dbpass"); $stmt = $pdo->query("SELECT id, name FROM users LIMIT 100"); $users = $stmt->fetchAll(PDO::FETCH_ASSOC);
// 5. 캐시에 저장 $memcache->set($cache_key, json_encode($users), $cache_ttl);
echo "From DB:<br>"; }
// 6. 결과 출력 foreach ($users as $user) { echo $user['id'] . ": " . htmlspecialchars($user['name']) . "<br>"; } ?>
|