PHP memcache的使用教程
(结尾附:完整版资源下载)
首先,为什么要用memcached?如果你看过InnoDB的一些书籍,你应该知道在存储引擎那一层是由一个内存池的。而在内存池中
又有一个缓冲池。而缓冲池就会缓冲查找的数据,碰巧也是采用LRU算法进行管理的。其中运用到了,LRU List,Free List,Flush List。
而且,InoDB还对普通的LRU算法进行了优化,在LRU列表中设置了midpoint位置,使LRU列队不会因为一次过大的查找而把所有数据
“挤”出列队。既然MySQL数据库以及有了缓存,为什么还需要在服务器端内存中再加一个缓存呢?
诚然memcached的缓存效果可能更加好,但主要还是因为InnoDB缓存池中缓存的是数据页,LRU列表保存的是最近使用的页。如下图:
而memcached缓存的是键值对,效果肯定更好。
ge
接下来,我们介绍一下memadin这个工具:
MemAdmin是一款可视化的Memcached管理与监控工具,使用PHP开发,体积小,操作简单。
对于使用PHP想用Memcached的程序员,MemAdmin应该是你的首选。
官网说明的主要功能:
服务器参数监控:STATS、SETTINGS、ITEMS、SLABS、SIZES实时刷新
服务器性能监控:GET、DELETE、INCR、DECR、CAS等常用操作命中率实时监控
支持数据遍历,方便对存储内容进行监视
支持条件查询,筛选出满足条件的KEY或VALUE
数组、JSON等序列化字符反序列显示
兼容memcache协议的其他服务,如Tokyo Tyrant (遍历功能除外)
支持服务器连接池,多服务器管理切换方便简洁
演示地址:http://www.junopen.com/memadmin/
1、首先你需要有一个php环境,windows下开发的朋友推荐使用wampserver,稳定,简单
2、安装php的memcached扩展程序
安装方法如下:
1. 下载memcache的windows稳定版,解压放某个盘下面,比如在d:\memcached。
2. 进入cmd命令行,输入d:\memcached\memcached.exe -d install安装。
3. 再输入:d:\memcached\memcached.exe -d start启动。
4.下载php_memcache.dll,注意查找对应的php版本的文件,放在php文件夹的ext目录中。一定要注意版本!
5. 在C:\Windows\php.ini 加入一行 extension=php_memcache.dll
6.重新启动web服务(iis或Apache),然后查看一下phpinfo,如果有memcache,那么就说明安装成功(如下图)

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 显示帮助!
3、然后将memadin的包复制到php中www的目录下
4、这样就可以登陆使用了

最后再提一点,memcache与memcached的区别。
网上的资料大体的意思是,memcached是一种技术,或者说攻略。而memcache是PHP使用该项技术的扩展,类似于C语言的库函数。通过库函数调用某些函数来执行你要的功能,比如画图的graphics.h
但现在php有了显得memcached扩展,他是memcache的升级版,功能更加强大,效率也更加快。但只支持oop,而且依赖于libevent类库,所以必须先装libevent类库。这就类似于myql 和 mysqli 的关系。
PHP memcache的使用教程的更多相关文章
- Memcache教程 Memcache零基础教程
Memcache是什么 Memcache是danga.com的一个项目,来分担数据库的压力. 它可以应对任意多个连接,使用非阻塞的网络IO.由于它的工作机制是在内存中开辟一块空间,然后建立一个Hash ...
- win7下64位系统memcache/memcached安装教程
折腾了1个多小时,终于搞定.操作系统时64位的,php5.3.13 类似于上一篇的xdebug安装教程~~ memcache和memcached的区别 在自己的新程序中打算全面应用memcached ...
- wamp在win7下64位系统memcache/memcached安装教程
折腾了1个多小时,终于搞定.操作系统时64位的,php5.3.13 类似于上一篇的xdebug安装教程~~ memcache和memcached的区别 在自己的新程序中打算全面应用memcached ...
- memcache/memcached安装教程并应用Tinkphp3.2
在自己的新程序中打算全面应用memcached技术,这个很容易理解这是memcached是内存缓存,但是怎么还有memcache呢?其实很简单,memcache是php的一个扩展,用于php管理mem ...
- Centos安装Memcached和(Nginx)Memcache扩展详细教程
下载memadmin,下载地址:http://www.junopen.com/memadmin/ 并在IIS新建站点. 测试地址:http://wap.yousawang.com/mem , 1.重启 ...
- [浪风推荐]php的memcache应用入门教程
所需环境: php 5.3.3 apache 2.2.7 mysql 5.5.8 解压Memcached_1.2.5文档,cmd下执行memcached.exe -d -install 将php5.3 ...
- Yii系列教程(四):使用Memcache保存会话
1环境准备 安装Memcached服务端: yum -y installmemcached.x86_64 安装PHP-Memcache扩展: yum -y installphp-pecl-memcac ...
- Memcached和Memcache 配置教程windows X64
一.Memcached和Memcache的区别: 网上关于Memcached和Memcache的区别的理解众说纷纭,我个人的理解是: Memcached是一个内存缓存系统,而Memcache是php的 ...
- Memcached和Memcache安装(64位win7)
一.Memcached和Memcache的区别: 网上关于Memcached和Memcache的区别的理解众说纷纭,我个人的理解是: Memcached是一个内存缓存系统,而Memcache是php的 ...
随机推荐
- 1.2 Activity
Activity是个应用组件,它给用户提供了为了完成某些工作而可以进行交互操作的界面,例如,电话详情,打电 话,发邮件,或是浏览地图.每一个Activity都有一个窗口来绘制自已的用户界面.通常来说, ...
- springbatch操作DB
一.需求分析 使用Spring Batch对DB进行读写操作: 从一个表中读取数据, 然后批量的插入另外一张表中. 二.代码实现 1. 代码结构图: 2. applicationContext.xml ...
- 使用inotify+rsync实现服务器间文件同步
1. rsync 1.1 什么是rsync rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.它使用所谓的“Rsync演算法”来使本地和远程两个主机之间的文件达到 ...
- 为什么 MongoDB 连接数被用满了?
使用 MongoDB 时,可能会遇到因为 mongod 连接数用满了,导致客户端无法连接的问题.mongod的最大连接数通过 net.maxIncomingConnections 指定,默认值为100 ...
- Memcached集群:Magent缓存代理使用
小结: 先启动memcached 然后启动magent memcached -d -p 11211 -u memcached -m 64 -c 5120 memcached -d -p 11212 - ...
- EJB EJB定义了一组可重用的组件:Enterprise Beans
EJB EJB定义了一组可重用的组件:Enterprise Beans.开发人员可以利用这些组件,像搭积木一样建立分布式应用.
- 模式识别之贝叶斯---朴素贝叶斯(naive bayes)算法及实现
处女文献给我最喜欢的算法了 ⊙▽⊙ ---------------------------------------------------我是机智的分割线----------------------- ...
- c#检查网络文件是否存在
public bool IsExist(string uri) { HttpWebRequest req = null; HttpWebResponse res = null; try { req = ...
- ZeroMQ一个更小、更快、更简单的智能传输层协议
这个githube上的教程是非常好的,是个中文翻译,大家直接学这个就行 https://github.com/anjuke/zguide-cn/tree/master/bin 原文地址: https: ...
- 第七篇:使用 fcntl 函数 获取,设置文件的状态标志
前言 当打开一个文件的时候,我们需要指定打开文件的模式( 只读,只写等 ).那么在程序中如何获取,修改这个文件的状态标志呢? 本文将告诉你如何用 fcntl函数 获取指定文件的状态标志. 解决思路 1 ...