Memcached的学习:windows下php开memcached扩展
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Memcached的学习:windows下php开memcached扩
展
Php代码与memcached的交互和与mysql的交互原理是一样的,需要安装一个服务器端的memcached ,现有的交互处理过程已经封装成了一个php的扩展了;需要在php.ini中,将这个扩展加进去。
Php memcached官方手册地址:/manual/en/memcached.get.php
一:下载地址:
php扩展库pecl下载地址:
二:安装与配置:
安装方法一:下载以后,解压,然后放到C盘根目录下。
双击memcached.exe就可以启动memcached服务了,这时,你可以打开任务管理器,如果在进程里出现memcached.exe就说明memcached服务已经启动了,还要让cmd窗口开着,这样才是启动了memcached服务。
安装方法二:
1.下载Windows版的memache的压缩包
2.解压到合适的位置如:D:memached目录下面。
3.进入命令行切换到该目录下面,可以用dir看一下目录下面的文件信息。
4. 输入:memached.exe -d install 安装服务器。
5. 输入:memached.exe -d start启动服务器,等到下次启动系统的时候,此服务会自动启动。
默认的端口号为11211.
配置:
1. 下载pecl模块包(地址如上),解压后将php_memache.dll放到php目录的ext子目录下,为了使得能正常使
用,最好下载和php版本一致的模块包。
2. 在php.ini文件中导入'extension=php_memcache.dll'
然后重启apache,估计就可以了(可以在phpinfo.php 中,看看是否有memcached模块),当然了,我们可以写一个实验一下$memcache_obj = new Memcache;
$memcache_obj->connect('localhost', 11211);
$memcache_obj->set('var_key', 'This is a memcached test!',MEMCACHE_COMPRESSED, 50);
echo $memcache_obj->get('var_key');
备注:
1)memcached 的几个指令:
-p监听的端口
-l连接的IP地址, 默认是本机
-d start启动memcached服务
-d restart重起memcached服务
-d stop|shutdown关闭正在运行的memcached服务
-d install安装memcached服务
-d uninstall卸载memcached服务
-u以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。
默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
2)memcached相关的函数:
01.Memcache::add —添加一个值,如果已经存在,则返回false
02.Memcache::addServer —添加一个可供使用的服务器地址
03.Memcache::close —关闭一个Memcache对象
04.Memcache::connect —创建一个Memcache对象
05.memcache_debug —控制调试功能
06.Memcache::decrement —对保存的某个key中的值进行减法操作
07.Memcache::delete —删除一个key值
08.Memcache::flush —清除所有缓存的数据
09.Memcache::get —获取一个key值
10.Memcache::getExtendedStats —获取进程池中所有进程的运行系统统计
11.Memcache::getServerStatus —获取运行服务器的参数
12.Memcache::getStats —返回服务器的一些运行统计信息
13.Memcache::getVersion —返回运行的Memcache的版本信息
14.Memcache::increment —对保存的某个key中的值进行加法操作
15.Memcache::pconnect —创建一个Memcache的持久连接对象
16.Memcache::replace — R对一个已有的key进行覆写操作
17.Memcache::set —添加一个值,如果已经存在,则覆写
18.Memcache::setCompressThreshold —对大于某一大小的数据进行压缩
19.Memcache::setServerParams —在运行时修改服务器的参数
3)zend framework的cache后端支持memcached,我们也可以来试试看
$front = array('lifeTime' =>100,'automatic_serialization' =>true);
$back = array('server' =>array(array('host' =>'127.0.0.1','port' =>11211,'persistent' =>true)),compression =>true); //后端server是个二维数组,每一维代表一个连接。
$cache =
Zend_Cache::factory("Core","Memcached",$front,$back);
$cache->save('This is zend memcached','zend');
echo $cache->load('zend')."<br />";
现在zend framework 的代码,自己还没有详细研究,等自己以后在学习的过程中,可以尝试用一下;。