网站加速VPS篇 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翻页拉到最下面在[Zend]之前加入

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探针,看下是不是有这个了,有的话就是装好了

memcache
Version  2.2.5memcache
Version  2.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.

完成

下面安装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.

完成

(0)

相关推荐

  • PHP MemCached 高级缓存应用代码

    Memcache常用方法 Memcache::add - 添加一个值,如果已经存在,则返回false Memcache::addServer - 添加一个可供使用的服务器地址 Memcache::close - 关闭一个Memcache对象 Memcache::connect - 创建一个Memcache对象 Memcache::debug - 控制调试功能 Memcache::decrement - 对保存的某个key中的值进行减法操作 Memcache::delete - 删除一个key值

  • Linux下的Memcache安装方法

    Linux下Memcache服务器端的安装服务器端主要是安装memcache服务器端,目前的最新版本是 memcached-1.3.0 .下载:http://www.danga.com/memcached/dist/memcached-1.2.2.tar.gz另外,Memcache用到了libevent这个库用于Socket的处理,所以还需要安装libevent,libevent的最新版本是libevent-1.3.(如果你的系统已经安装了libevent,可以不用安装)官网:http://ww

  • PHP MemCached高级缓存配置图文教程

    1.Memcache相关介绍 memcache是一个高性能的分布式的内存对象缓存系统,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等. 使用Memcache的网站一般流量都是比较大的,为了缓解数据库的压力,让Memcache作为一个缓存区域,把部分信息保存在内存中,在前端能够迅速的进行存取. 2.Memcache Win32的安装 (1)下载地址: http://www.jehiah.cz/projects/memcached-win32/ (2)安装步骤: step1

  • 利用Memcached在php下实现session机制 替换PHP的原生session支持

    方法文件 session实现文件:memcachedsession.php 实现原理(也是PHP内部session的实现原理): 1.先判断客户端有没有sessionid, a.没有就添加一个sessionid给客户端,通常是32位hash码,同时初始化一个数组做session容器 b.如果客户端有sessionid,则利用这个sessionid去memcached里面查数据. 2.用户在页面执行过程中可以自行修改session容器里的session值 3.页面最后会把用户的session容器作

  • Windows下Memcache的安装方法

    其实我开始研究Memcache的时候并不知道居然还有memcached for Win32这个鸟东西,害得我在CnetOS下折腾1天才搞定,今天突然发现Windows下的Memcache进行开发调试完全没有问题,所以写篇Memcache的文档分享给大家. Windows下的Memcache安装:1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached2. 在终端(也即cmd命令界面)下输入 'c:\memcached\memcached.exe -d i

  • php 5.3.5安装memcache注意事项小结

    安装php扩展:windows 下的 memcache步骤 1.下载php的扩展dll:http://downloads.php.net/pierre/ (如果上述目录没有符合你的php的编译版本的dll就去google下吧,会有很多的哦!) 下面是我安装的版本(因为我的php是vc6编译的): 2.将下载的.dll放入php的扩展目录下面,一般在php目录中的ext 文件夹中. 3.修改apache目录下bin文件夹中的php.ini,加上extension=php_memcache.dll即

  • ubuntu 编译安装php 5.3.3+memcache的方法

    //编译安装php 5.3.3 由于php5.3.X已经自带了php-fpm所以不需要打补丁 # sudo ./configure --prefix=/usr/local/php-5.3.3 --with-mcrypt --with-gettext --with-mysql --with-gd --with-jpeg-dir --with-png-dir --with-curl --with-freetype-dir --enable-gd-native-ttf --enable-mbstrin

  • nginx+apache+mysql+php+memcached+squid搭建集群web环境

    服务器的大用户量的承载方案一.前言 二.编译安装 三. 安装MySQL.memcache 四. 安装Apache.PHP.eAccelerator.php-memcache 五. 安装Squid 六.后记 一.前言,准备工作当前,LAMP开发模式是WEB开发的首选,如何搭建一个高效.可靠.稳定的WEB服务器一直是个热门主题,本文就是这个主题的一次尝试.我们采用的架构图如下: 引用-------- ---------- ------------- --------- ------------| 客

  • Discuz!下Memcache缓存实现方法

    前言:在PHP+MySQL架构的站点中,本文重点从MySQL的角度去分析如何使Discuz!论坛(或者类似的PHP+MySQL架构的程序)应对大访问量.同时给出一些使用Memcache去减轻MySQL压力的建议.其中很多数据是个人测试的结果,如有不同意见,敬请留言告之.另外由于个人思维的问题,行文比较跳跃,特此声明! 系统分析:单纯的从MySQL的角度出发,单台MySQL的数据库负载到每天上亿次的操作(每秒大概1100次MySQL操作,然后乘以86400)应该不是非常困难的事情.按照这个数据也就

  • Linux服务器中对于Memcache的安装配置方法

    下载:http://www.danga.com/memcached/dist/memcached-1.2.2.tar.gz 另外,memcache用到了libevent这个库用于socket的处理,所以还需要安装libevent,libevent的最新版本是libevent-1.3.(如果你的系统已经安装了libevent,可以不用安装) 官网:http://www.monkey.org/~provos/libevent/ 下载:http://www.monkey.org/~provos/lib

随机推荐