2013/06/24 服务器技术 2 Comments Windows Memcache安装配置(For PHP5.3) Memcache是什么?Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,是一个自由和开放源代码、高性能、分配的内存对象缓存系统。用于加速动态web应用程序,减轻数据库负载与压力。它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这 些HashTable。Memcache官方网站:http://www.danga.com/memcachedhttp://memcached.org/ 更多详细的信息可以来这里了解 :)Memcached又是什么?Memcache是该系统的项目名称,Memcached是该系统的主程序文件,以守护程序方式运行于一个或多个服务器中,随时接受客户端的连接操作,使用共享内存存取数据。一个是项目名称,一个是主程序守护进程文件名。那PHP中的Memcache是什么?php中的所讲的memcache是用于连接Memecached的客户端组件。如果你对php扩展模块中的memcache和memcached有疑问,请参考《php模块memcache和memcached区别分析》Windows Memcache安装配置(For PHP5.3)约定信息:操作系统Windows7 X64当前使用PHP版本:php-5.3.26-Win32-VC9-x86Memcache Server版本:memcached-1.2.6-win32-binMemcache Client版本:php_memcache-2.2.6-5.3-vc9-x86(这里需要和PHP版本匹配)注意:PHP for Win32有两个版本,所以PHP Memcache扩展也相应的有两个版本:VC9 x86 Non Thread Safe(nts) 和 VC9 x86 Thread Safe相关软件下载:PHP程序下载地址:http://windows.php.net/download/windows版本的Memcached下载地址:http://code.jellycan.com/memcached/php_memcache.dll下载地址:http://downloads.php.net/pierre/Tips:请根据本机实际安装的PHP版本选择匹配的php_memcache.dll进行下载,VC9 x86 Non Thread Safe(nts) 和 VC9 x86 Thread Safe。一、Memcached安装将下载下来的windows版本的Memcached,解压之后放在硬盘的目录下,这里我放到了D:\phpweb\memcached目录,然后在运行中输入cmd进入命令行,进入到memcached目录中运行以下命令:安装: memcached.exe –d install启动:memcached.exe –d start通过windows任务管理器我们可以看到memcached进程已经在运行了,如图Tips: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。 二、Memcached for PHP 扩展安装(让PHP加载Memcache)很简单。不过还没完,你只是安装了一个memcached caching server,还没有和php建立关联。所以在php程序里还不能运用。1、下载php_memcache.dll,请自己查找对应的php版本的文件http://downloads.php.net/pierre/2、在你的 php.ini 加入一行 "extension=php_memcache.dll"(不含引号)3、在php.ini末尾加上[Memcache]memcache.allow_failover = 1 //是否在发生错误时(对用户)透明的转移到其他服务器。 memcache.max_failover_attempts=20 //定义在写入和获取数据时最多尝试的服务器次数(即:故障转移最大尝试数),仅和 memcache.allow_failover结合使用。 memcache.chunk_size =8192 //数据传输块大小,这个值越小网络I/O次数越多,如果发现莫名的速度降低, 可以尝试将此值调至32768。 memcache.default_port = 11211 //在尝试连接memcache的时候如果没有单独指定端口默认使用的TCP端口号。具体运行配置详细可以查看:《PHP: 运行时配置- Manual》4、重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!Tips:-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 显示帮助三、Memcache状态测试:运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!<?php $mem = new Memcache; $mem->connect('127.0.0.1', 11211); $mem->set('key', 'This is a memcache test page!', 0, 60); $val = $mem->get('key'); echo $val; //output This is a test page! echo '<br />'; echo 'Memcache Server 版本:'.$mem->getVersion(); //output 1.2.6 echo "<p><a href='https://www.fity.cn' style='text-decoration:none;font-size:10pt;'>来源:未来往事</a></p>"; ?> Tips:第2行部分,connect里面的参数第一个表示服务器地址,第二个表示端口号,具体函数详细说明可以查看:《PHP: Memcache - Manual》使用“telnet ip 端口号”,然后使用:stats命令可以看到memcached的使用情况如下:telnet 192.168.1.135 11211 statsSTAT pid 7380 //memcache服务器的进程IDSTAT uptime 5657 //服务器已经运行的秒数STAT time 1372065199 //服务器当前的unix时间戳STAT version 1.2.6 //memcache版本STAT pointer_size 32 //当前操作系统的指针大小(32位系统一般是32bit)STAT curr_items 1 //服务器当前存储的items数量STAT total_items 2 //从服务器启动以后存储的items总数量STAT bytes 68 //当前服务器存储items占用的字节数STAT curr_connections 3 //当前打开着的连接数STAT total_connections 7 //从服务器启动以后曾经打开过的连接数STAT connection_structures 5 //服务器分配的连接构造数STAT cmd_get 2 //get命令(获取)总请求次数STAT cmd_set 2 //set命令(保存)总请求次数STAT get_hits 2 //总命中次数STAT get_misses 0 //总未命中次数STAT evictions 0 //为获取空闲内存而删除的items数(分配给memcache的空间用满后需要删除旧的items来得到空间分配给新的items)STAT bytes_read 177 //总读取字节数(请求字节数)STAT bytes_written 603 //总发送字节数(结果字节数)STAT limit_maxbytes 67108864 //分配给memcache的内存大小(字节)STAT threads 1 //当前线程数END补充:rusage_user //进程的累计用户时间rusage_system //进程的累计系统时间补充与备注:缓存命中率 = get_hits/cmd_get * 100%get_misses的数字加上get_hits应该等于cmd_gettotal_items == cmd_set == get_misses,当可用最大内存用光时,memcached就会删掉一些内容,等式就会不成立疑问:在windows环境下启动memcache时如何加入参数:打开注册表,在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached Server 下面找到一个 ImagePath 的字符串项,正好是服务的执行路径的字符串,双击该串,在后面加入 -l 192.168.1.135 -m 1024 -p 11211 (访问ip为:192.168.1.135 使用1G内存,11211为端口),再启动服务。 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 显示帮助 本文最后更新于 2019-06-27 14:12:03 并被添加「windows memcache」标签,已有 18099 位童鞋阅读过。 本文作者:未来往事 本文链接:https://felixway.cn/post/394.html 本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处 相关文章 Memcache PHP测试代码 Windows系统下访问Linux系统格式分区 性能测试,你真的懂吗? BAT批处理命令set /p:回车或双引号程序不执行问题 Windows Server 2008 R2 MSDN ISO镜像简体中文/英文版
请问下 NTS 和 TS版本有什么不同?
@企业名录
NoneThread Safe对应php的FastCGI执行方式、Thread Safe对应php的ISAPI执行方式