memcached 安装使用

来源:互联网 发布:51单片机电机参数 编辑:程序博客网 时间:2024/06/03 21:28

memcached 安装使用

先把php版本从5.2.0升级到5.2.4(覆盖原来的文件就行了) 
   1. http://jehiah.cz/projects/memcached-win32/ 上下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached  
   2. 在终端(也即cmd命令界面)下输入 'c:\memcached\memcached.exe -d install' 安装
   3. 再输入: 'c:\memcached\memcached.exe -d start' 启动
   NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。默认端口:11211。
   4. 在C:\winnt\php.ini 加入一行 'extension=php_memcache.dll'
   5. 下载pecl的PECL 5.2.4 Win32 binaries模块包,解压缩后将其中的memcache.dll考到c:\php\ext 中,(也不一定是c盘的PHP文件夹下,主要是看你当初把PHP安装到哪个盘符下面了)
   NOTE: php和pecl的版本要一致。
   6.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!





emcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。(关于Memcache的更多信息请Google)
Memcache官方网站:http://www.danga.com/memcached
【安装Memcache服务器端】
我目前的平台,服务器是Fedora Core 1(内核:2.4.22),客户端是Windows XP SP2,需要安装的就是服务器的Memcached的守护进程和客户端的PHP扩展php_memcache两个东西。现在我分别来讲。
服务器端主要是安装memcache服务器端,目前的最新版本是 memcached-1.2.0 。
下载:http://www.danga.com/memcached/dist/memcached-1.2.0.tar.gz
另外,Memcache用到了libevent这个库用于Socket的处理,所以还需要安装libevent,libevent的最新版本是libevent-1.2。(如果你的系统已经安装了libevent,可以不用安装)
官网:http://www.monkey.org/~provos/libevent/
下载:http://www.monkey.org/~provos/libevent-1.2.tar.gz
我分别把两个东东下载回来,放到 /tmp 目录下:
# cd /tmp
# wget http://www.danga.com/memcached/dist/memcached-1.2.0.tar.gz
# wget http://www.monkey.org/~provos/libevent-1.2.tar.gz
先安装libevent:
# tar zxvf libevent-1.2.tar.gz
# cd libevent-1.2
# ./configure --prefix=/usr
# make
# make install
然后看看我们的libevent是否安装成功:
# ls -al /usr/lib | grep libevent
lrwxrwxrwx 1 root     root       21 11?? 12 17:38 libevent-1.2.so.1 -> libevent-1.2.so.1.0.3
-rwxr-xr-x    1 root     root       263546 11?? 12 17:38 libevent-1.2.so.1.0.3
-rw-r--r--        1 root     root       454156 11?? 12 17:38 libevent.a
-rwxr-xr-x    1 root     root       811 11?? 12 17:38 libevent.la
lrwxrwxrwx 1 root     root       21 11?? 12 17:38 libevent.so -> libevent-1.2.so.1.0.3
还不错,都安装上了,再来安装memcache,同时需要安装中指定libevent的安装位置:
# cd /tmp
# tar zxvf memcached-1.2.0.tar.gz
# cd memcached-1.2.0
# ./configure --with-libevent=/usr
# make
# make install
如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。
安装完成后会把memcached放到 /usr/local/bin/memcached ,我们看以下是否安装了:
# ls -al /usr/local/bin/mem*
-rwxr-xr-x 1 root     root    137986 11?? 12 17:39 /usr/local/bin/memcached
-rwxr-xr-x 1 root     root    140179 11?? 12 17:39 /usr/local/bin/memcached-debug
恩,安装完成了,现在我们看以下memcache的帮助:
# /usr/local/bin/memecached -h
memcached 1.2.0
-p <num>          port number to listen on
-s <file>             unix socket path to listen on (disables network support)
-l <ip_addr>        interface to listen on, default is INDRR_ANY
-d                          run as a daemon
-r                         maximize core file limit
-u <username> assume identity of <username> (only when run as root)
-m <num>       max memory to use for items in megabytes, default is 64 MB
-M                      return error on memory exhausted (rather than removing items)
-c <num>          max simultaneous connections, default is 1024
-k                          lock down all paged memory
-v                          verbose (print errors/warnings while in event loop)
-vv                      very verbose (also print client commands/reponses)
-h                      print this help and exit
-i                          print memcached and libevent license
-b                      run a managed instanced (mnemonic: buckets)
-P <file>          save PID in <file>, only used with -d option
-f <factor>       chunk size growth factor, default 1.25
-n <bytes>       minimum space allocated for key+value+flags, default 48
参数不算多,我们来启动一个Memcache的服务器端:
# /usr/local/bin/./memcached -d -m 10   -u root -l(字母l) 192.168.0.200 -p 12000
-d选项是启动一个守护进程,-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,-u是运行Memcache的用户,我这里是root,-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.0.200,-p是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口,-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,-P是设置保存Memcache的pid文件,我这里是保存在/tmp/memcached.pid,如果要结束Memcache进程,执行:
# kill `cat /tmp/memcached.pid`

也可以启动多个守护进程,不过端口不能重复。
原创粉丝点击