如何在windows系统上让php支持memcached呢?
第一步:安装 Memcached 服务
第二步:让php加载memcached.dll扩展
以下资料参考:
1、Installing Memcached for PHP 5.3 on Windows 7
2、Windows 下Memcache安装配置 + 没有成功加载memcached
详情步骤如下:
第一步:安装 Memcached 服务
1、下载 Memcached Win32 (点我下载)
2、解压下载的文件到自定义目录,例如(C:\webserver\memcached)
解压后该目录下仅有一个 memcached.exe 在该目录下
3、使用管理员权限运行命令行(cmd)
4、安装
memcached -d install
提示:如果提示 MSVCP71.dll 不存在的错误,则访问这里(戳我)
5、启动
memcached -d start
6、检查安装路径(可以不理会)
wmic process get description, executablepath | findstr memcached.exe
显示:
memcached.exe C:\webserver\memcached\memcached.exe
到这里,memcached 服务安装完毕
第二步:让php加载memcached.dll扩展
1、下载VC9版本的memcached.dll
线程安全版
http://downloads.php.net/pierre/php_memcache-2.2.6-5.3-vc9-x86.zip
非线程安全版 fastcgi运行php的方式
http://downloads.php.net/pierre/php_memcache-2.2.6-5.3-nts-vc9-x86.zip
2、解压缩得到 php_memcache.dll ,并拷贝到php的扩展目录 C:\webserver\php5.3nts\ext
3、编辑 php.ini ,在其底部加入
[memcache] extension=php_memcache.dll ;一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表, ;它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。 ;是否在遇到错误时透明地向其他服务器进行故障转移。 memcache.allow_failover = 0 ;接受和发送数据时最多尝试多少个服务器,只在打开memcache.allow_failover时有效。 memcache.max_failover_attempts = 20 ;数据将按照此值设定的块大小进行转移。此值越小所需的额外网络传输越多。 ;如果发现无法解释的速度降低,可以尝试将此值增加到32768。 memcache.chunk_size = 8192 ;连接到memcached服务器时使用的默认TCP端口。 memcache.default_port = 11211 ;控制将key映射到server的策略。默认值"standard"表示使用先前版本的老hash策略。 ;设为"consistent"可以允许在连接池中添加/删除服务器时不必重新计算key与server之间的映射关系。 memcache.hash_strategy = "consistent" ;控制将key映射到server的散列函数。默认值"crc32"使用CRC32算法,而"fnv"则表示使用FNV-1a算法。 ;FNV-1a比CRC32速度稍低,但是散列效果更好。 memcache.hash_function = "crc32" ;以下2个设置见上上面的[session] ;当值为memcache时标记使用memcache作为session处理器 ;session.save_handler = "files" ;定义用于通话存储的各服务器链接的分隔符号,例如:“tcp://host1:11211, tcp://host2:11211” ;每服务器个链接可以包含被接受于该服务器的参数,比较类似使用 Memcache::addServer() 来添加的服务器 ;例如:“tcp://host1:11211?persistent=1&weight=1&timeout=1& amp;retry_interval=15” ;session.save_path = ""
4、重启IIS(命令行中运行)
iisreset /restart
至此,memcached配置完成
以上就是本文的全部内容了。希望大家能够喜欢。