pdo连接数据库参考文章http://tp0.top/index.php/article/page/id/986.html
1、windows下memcache的安装
https://pecl.php.net/package/memcache/3.0.8/windows
按实际环境下载memcache程序,查看phpinfo
,ts即为线程安全,x86版本系统
下载后将压缩包里面的php_memcache.dll文件放在php目录的ext文件夹
安装成功后为
2、memcache入门使用
Memcache::add — 增加一个条目到缓存服务器
Memcache::addServer — 向连接池中添加一个memcache服务器
Memcache::close — 关闭memcache连接
Memcache::connect — 打开一个memcached服务端连接
Memcache::decrement — 减小元素的值
Memcache::delete — 从服务端删除一个元素
Memcache::flush — 清洗(删除)已经存储的所有的元素
Memcache::get — 从服务端检回一个元素
Memcache::getExtendedStats — 缓存服务器池中所有服务器统计信息
Memcache::getServerStatus — 用于获取一个服务器的在线/离线状态
Memcache::getStats — 获取服务器统计信息
Memcache::getVersion — 返回服务器版本信息
Memcache::increment — 增加一个元素的值
Memcache::pconnect — 打开一个到服务器的持久化连接
Memcache::replace — 替换已经存在的元素的值
Memcache::set — Store data at the server
Memcache::setCompressThreshold — 开启大值自动压缩
Memcache::setServerParams — 运行时修改服务器参数和状态
范例
bool Memcache::connect ( $host, $port, $timeout) 连接memcache服务器 $host(string) 服务器域名或ip $port(int) 服务器tcp端口号,默认值是11211 $memcache = new Memcache; $memcache->connect(‘127.0.0.1‘, 11211);
3、memcache缓存pdo获取的数据
<?php header('content-type:text/html;charset=utf8'); //实例化memcache对象 $memcache = new Memcache(); //创建连接 $memcache->connect('127.0.0.1', 11211); $query = 'select * from blog_article'; //创建键名 $key = md5($query); //判断键名是否已经被缓存 if (!$memcache->get($key)) { //pdo连接 try { $conn = new PDO('mysql:host=localhost;dbname=ansion_blog', 'root', 'root'); } catch (Exception $e){ die($e->getMessage()); } try { $data = $conn->query($query); while ($row = $data->fetch(PDO::FETCH_ASSOC)) { $arr[] = $row; } //增加$arr序列化字符串到缓存$key,30秒到期 $memcache->add($key, serialize($arr), 0, 30); $result = $arr; $mark = 'mysql'; } catch (Exception $e) { die($e->getMessage()); } }else{ $mark = 'memcache'; //获取memcache缓存里对应的键名值 $data_mem = $memcache->get($key); $result = unserialize($data_mem); } //关闭memcache连接 $memcache->close(); echo $mark.'<br />'.$key.'<br />'; var_dump($result);
第一次运行程序
刷新一下变成缓存的内容了
3、使用telnet连接memcache
然后 get c97c4c50bc5093c8083ba5c6bb96c00e 就可以获取value
来自ansion博客
2017年1月30日