当用户刷新网页或有大量用户访问网站时,就会产生大量数据库查询进程,这不但拖慢了网页打开速度,同时也给服务器带来了很大压力。
作为php菜鸟,今天刚刚接触到了 memcache
这个东东,于是自己跟着文档做了一个实例,一方面鼓励自己,另一方面等大神轻喷~
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 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| <?php header("Content-Type:text/html;charset=utf-8"); $mem = new Memcache;
$mem->connect("localhost",11211);
$sql = "select id,name,pass,age,sex,email from user order by id"; $key = md5($sql);
$data = $mem->get($key);
if (empty($data)) { try{ $pdo = new PDO("mysql:host=localhost;dbname=phpdemo", "root", "");
}catch(PDOException $e){ echo "数据库连接失败,原因是".$e->getMessage(); } $stmt = $pdo->prepare($sql);
$stmt->execute();
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
$mem->add($key, $data, MEMCACHE_COMPRESSED, 5);
echo "<br>这是第一次访问,从数据库访问并存到内存中!"; } echo "<pre>"; print_r($data); echo "</pre>"; $mem->close();
?>
|