PHP5.4版本memcache扩展dll文件ts版本,memcache是比较流行的cache解决方案,是高效、快速的分布式内存对象缓存系统,主要用于加速 WEB 动态应用程序
Windows下的Memcache安装 :
1. 解压附件中的Memcache.rar放某个盘下面,比如在c:\memcached
2. 在终端(也即cmd命令界面)下输入 ‘c:\memcached\memcached.exe -d install’ 安装[此处路径为你的memcached的存放路径]
3. 再输入: ‘c:\memcached\memcached.exe -d start’ 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。
4.下载php_memcache.dll ,请自己查找对应的php版本的文件
5. 在C:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’[dll文件夹内有php5.2和php5.3的php_memcache.dll]
6.将对应的dll文件拷贝到php安装目录的ext文件夹内
6.重新启动Apache或iis,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!
memcached常用方法介绍
Memcache::connect() — 创建一个Memcache对象
Memcache::pconnect() — 创建一个Memcache的持久连接对象
Memcache::flush() — 清除所有缓存的数据,但是不会削去使用的内存空间。
Memcache::close() — 关闭一个Memcache对象
memcache_debug() — 控制调试功能,前提是php在编译的时候使用了–enable-debug选项,否则这个函数不会有作用。
Memcache::addServer() — 添加一个可供使用的服务器地址。该方法有8个参数,除了第一个参数以外,其他都是可选的,第一个参数表示服务器的地址,第二个参数表示端口,第三个参数表 示是否是一个持久连接,第四个参数表示这台服务器在所有服务器中所占的权重,第五个参数表示连接的持续时间,第六个参数表示连接重试的间隔时间,默认为 15,设置为-1表示不进行重试,第七个参数用来控制服务器的在线状态,第8个参数允许设置一个回掉函数来处理错误信息。
Memcache::add() — 添加一个值,如果已经存在,则返回false
Memcache::set() — 添加一个值,如果已经存在,则覆写。 该方法有四个参数,第一个参数是key,第二个参数是value,第三个参数可选,表示是否压缩保存, 第四个参数可选,用来设置一个过期自动销毁的时间。
Memcache::get() — 获取一个key值。该方法有一个参数,表示key
Memcache::replace() — 对一个已有的key进行覆写操作。该方法有四个参数,作用和Memcache::set()方法的相同。
Memcache::increment() — 对保存的某个key中的值进行加法操作
Memcache::decrement() — 对保存的某个key中的值进行减法操作
Memcache::delete() — 删除一个key值。该方法有两个参数,第一个参数表示key,第二个参数可选,表示删除延迟的时间。
Memcache::getExtendedStats() — 获取进程池中所有进程的运行系统统计
Memcache::getServerStatus() — 获取运行服务器的参数。两个参数分别表示的地址和端口
Memcache::getStats() — 返回服务器的一些运行统计信息。此方法有三个参数,第一个参数表示要求返回的类型:reset, malloc, maps, cachedump, slabs, items, sizes;第二个参数和第三个参数是在第一个参数设置为“cachedump”时使用的。
Memcache::getVersion() — 返回运行的Memcache的版本信息
Memcache::setCompressThreshold() — 对大于某一大小的数据进行压缩。该方法有两个参数,第一个参数表示处理数据大小的临界点,第二个参数表示压缩的比例,默认为0.2。
Memcache::setServerParams() — 在运行时修改服务器的参数。相对Memcache::addServer()方法少了第三和第四个参数
说明:
Memcache::add()方法的作用和Memcache::set()方法类似,区别是如果 Memcache::add方法的返回值为false,表示这个key已经存在,而Memcache::set方法则会直接覆写。
四、php.ini中Memcache的配置
[Memcache]
; 一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,
; 它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。
; 是否在遇到错误时透明地向其他服务器进行故障转移。
memcache.allow_failover = On
; 接受和发送数据时最多尝试多少个服务器,只在打开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 = "standard"
; 控制将key映射到server的散列函数。默认值"crc32"使用CRC32算法,而"fnv"则表示使用FNV-1a算法。
; FNV-1a比CRC32速度稍低,但是散列效果更好。
;memcache.hash_function = "crc32"
;memcache也可以作为session的存储模块,具体参看:memcache PHP 的 session.save_handler.
-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 显示帮助