手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

MemCache的实例应用

时间:2024-10-13 03:51:55

1、在项目中最常见的Memcache应用,就是缓存从数据库查询的数据结果,以及保存会话空值信心(session)。那么如何将数据库查询出来的结果使用memcached服务器进行缓存呢?一减少频繁的数据库连接及大量的查询对数据库造成的压力。设计的原则是只要数据库中的记录没有被改变,就不需要重新连接数据库并反复执行的查询语句,相同的查询结果都应该从缓存服务器中获取

2、<?php Function select($sql,Memcache 铮喘饿怊$memcache){ $key =md5($sql);$data = $memcache-媪青怍牙>get($key); If(!$data){ Try{ $pdo = new PDO(“mysql:host=localhost;dbname=dbtest;”mysql_user”,”mysql_pass””);}catch(PDOException $e){ Die(“连接失败:”.$e->getMessage(););}$stmt = $pdo->prepare($sql);$stmt->execute();$data= $stmt->fetchAll(PDO::FETCH_ASSOC);$memcache->add($key,$data,MEMCACHE_COMPRESSED,0);}Return $data;}$memcache = new Memcache;$memcache->connect(“localhost”,11211);$data= select(“SELECT * FROM user”,$memcache);Var_dump($data);

3、上例代码只是项目开发中一个片段,声明了一个select()函数.调用select()函数时,为第一个参数传递一个有结果集的查询语句,第二个参数为MemCache类的对象。在项目中如果都使用这个函数获取数据库中记录的查询结果,则只有第一次调用时连接了一次数据库并从数据库中查询出结果,以后同样的查询语句都会从memcached服务器中获取数据,而不再从数据库查询操作,这样可以在很大程度上减轻数据库压力。在select()方法中,是用md5()函数将sql语句加密,作为存储方法的唯一标识符key,因为在SQL语句中会有一些特殊字符,也是出于安全考虑

© 手抄报圈