licess 发表于 2010-9-18 23:53:17

memcache和memcached安装配置教程

Memcache是什么?
Memcache是一个自由和开放源代码、高性能、分配的内存对象缓存系统。用于加速动态web应用程序,减轻数据库负载。 
它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这 些HashTable。

Memcached又是什么?
Memcached是Memcache系统的主程序文件,以守护程序方式运行于一个或多个服务器中,随时接受客 户端的连接操作,使用共享内存存取数据。


那PHP中的Memcache是什么?php中的所讲的memcache是用于连接Memecached的php支持扩展之一(可用phpinfo查看),类似mbstring,eAccelerator。
简单的说
Memcache是总的缓存系统项目名称,容易和PHP中的Memcache混淆
我们常提到Memcache其实是PHP中的Memcache,即PHP的Memcached扩展支持
我们常提到Memcached是服务端主程序文件,服务端安装程序
为了让你的程序飞起来,必须安装memcached服务端程序和PHP的Memcached扩展,所以如果您要使用Memcache来缓存系统,memcache和memcached两样我们都需要安装。

安装memcache
# cd /usr/local/src# wget http://pecl.php.net/get/memcache-2.2.5.tgz# gzip -d memcache-2.2.5.tgz# tar xvf memcache-2.2.5.tar# cd memcache-2.2.5以下几句,是以php所在目录为/usr/local/php为例,如果您的php有变化,请自行替换几句中/usr/local/php的部分
# /usr/local/php/bin/phpize# ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir# make && make install将memcache加入php扩展
# vi /etc/php.ini(/etc/php.ini地址为我的php.ini位置,如果你不知道你的php.ini在哪里,可以用# find / -name php.ini进行查找,或者传个探针phpinfo,找到Configuration File (php.ini) Path)中php.ini的位置
末尾加入
按键盘上的 i 开始编辑
CTRL+F翻页拉到最下面在之前加入
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"extension=memcache.so按Esc键,再输入
:wq
保存退出
重启你的web服务器,比如apache
/etc/init.d/httpd restart下面刷新下PHP探针,看下是不是有这个了,有的话就是装好了
memcacheVersion2.2.5memcacheVersion2.2.5下面安装memcached
装memcached首先需要安装安装libevent
如果是centos可以yum安装
# yum install libevent-devel如果不支持yum的系统,可以这样装libevent
# cd /usr/local/src# wget http://www.monkey.org/~provos/libevent-1.4.12-stable.tar.gz# tar vxf libevent-1.4.12-stable.tar.gz# cd libevent-1.4.12# ./configure --prefix=/usr/local/libevent# make && make install接续安装memcached
# cd /usr/local/src# wget http://cloud.github.com/downloads/saberma/saberma.github.com/memcached-1.4.4.tar.gz# tar vxf memcached-1.4.4.tar.gz# cd memcached-1.4.4# ./configure --prefix=/usr/local/memcached# make && make install安装完后启动memcached并分配32m内存(32为使用内存数,可按自身情况修改)
/usr/local/memcached/bin/memcached -d -m 32 -l 127.0.0.1 -p 11211 -u root将memcached加入启动项
# vi /etc/rc.d/rc.local按键盘上的 i 开始编辑
在最后加入
/usr/local/memcached/bin/memcached -d -m 32 -l 127.0.0.1 -p 11211 -u root按Esc键,再输入
:wq
保存退出
如果需要,可以reboot一下,不过不用reboot应该已经生效~
加速效果测试
用没有什么负载的Discuz X1做个测试,未启用时
GMT+8, 2010-9-12 09:08, Processed in 0.038893 second(s), 2 queries.
缓存启用后的效果,不过总体感觉VPS上效果不如用eAccelerato缓存加入效果那么明显
GMT+8, 2010-9-12 09:08, Processed in 0.008383 second(s), 2 queries, Memcache On.
OK,完工!~~

veryad 发表于 2011-1-7 12:33:24

晕,感觉有点乱。没看明白。

fttbcm 发表于 2011-7-26 14:45:15

装memcached首先需要安装安装libevent
如果是centos可以yum安装

    # yum install libevent-deve

l如果不支持yum的系统,可以这样装libevent

    # cd /usr/local/src
    # wget http://www.monkey.org/~provos/libevent-1.4.12-stable.tar.gz
    # tar vxf libevent-1.4.12-stable.tar.gz
    # cd libevent-1.4.12
    # ./configure --prefix=/usr/local/libevent
    # make&& make install

接续安装memcached

    # cd /usr/local/src
    # wget http://cloud.github.com/downloads/saberma/saberma.github.com/memcached-1.4.4.tar.gz
    # tar vxf memcached-1.4.4.tar.gz
    # cd memcached-1.4.4
    # ./configure --prefix=/usr/local/memcached
    # make &&make install

安装完后启动memcached并分配32m内存(32为使用内存数,可按自身情况修改)

    /usr/local/src/memcached-1.4.4/memcached -d -m 32 -l 127.0.0.1 -p 11211 -u root


将memcached加入启动项
# vi /etc/rc.d/rc.local按键盘上的 i 开始编辑
在最后加入

    /usr/local/src/memcached-1.4.4/memcached -d -m 32 -l 127.0.0.1 -p 11211 -u root


按Esc键,再输入
:wq
保存退出
如果需要,可以reboot一下,不过不用reboot应该已经生效~
加速效果测试
用没有什么负载的Discuz X1做个测试,未启用时

351577763 发表于 2011-9-13 21:51:31

最后两步:
将memcached加入启动项
# vi /etc/rc.d/rc.local按键盘上的 i 开始编辑
在最后加入

    /usr/local/src/memcached-1.4.4/memcached -d -m 32 -l 127.0.0.1 -p 11211 -u root


按Esc键,再输入
:wq
保存退出

vi /etc/rc.d/rc.local后,里面空空如野,按i后,键入/usr/local/src/memcached-1.4.4/memcached -d -m 32 -l 127.0.0.1 -p 11211 -u root,之后ESC,然后:wq,提示


"/etc/rc.d/rc.local"
"/etc/rc.d/rc.local" E212: Can't open file for writing
Press ENTER or type command to continue


怎么办?

licess 发表于 2011-9-14 08:15:11

回复 4# 的帖子

权限不够或文件没有写权限

351577763 发表于 2011-9-14 11:00:48

原帖由 licess 于 2011-9-14 08:15 发表 https://bbs.vpser.net/images/common/back.gif
权限不够或文件没有写权限
呃,以上整个操作,全root账户啊。。。。。

licess 发表于 2011-9-14 11:38:10

没执行权限的文件root也是没法执行的!

351577763 发表于 2011-9-14 12:48:02

呃,我是按着操作顺序一步步走下来的了,现在权限不够,该怎么办呢?

当然,改权限,请教怎么弄。

谢谢。

351577763 发表于 2011-9-14 15:32:45

研究了很久,断断续续貌似也有2个月了,现在差最后一步,军哥帮忙啊。。。。

licess 发表于 2011-9-14 19:38:58

回复 8# 的帖子

添加写权限:chmod +w 文件名

351577763 发表于 2011-9-14 22:19:10

呃。


~# chmod +w /etc/rc.d/rc.local
chmod: cannot access `/etc/rc.d/rc.local': No such file or directory

351577763 发表于 2011-9-14 22:29:54

提示该文件不存在怎么办?

该文件怎么会不存在呢?
页: [1]
查看完整版本: memcache和memcached安装配置教程