`
sinykk
  • 浏览: 356968 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

centos/apache 安装memcache及其php扩展 及memcache API

阅读更多

本文参考 http://blog.lixiphp.com/centos-linux-memcache-nginx-php-install/

 

因为时间问题,所以最后好到每个官方网站去下载最新版

一、源码包准备

服务器端主要是安装memcache服务器端,目前的最新版本是 memcached-v1.4.4 。
下载:http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz
另外,Memcache用到了libevent这个库用于Socket的处理,所以还需要安装libevent,

libevent的最新版本是libevent-1.4.13-stable。(如果你的系统已经安装了libevent,可以不用安装)
官网:http://www.monkey.org/~provos/libevent/
下载:http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gz

准备Memcached的PHP扩展的源码安装包:
官网:http://pecl.php.net/get/memcache-2.2.5.tgz

Linux指令下载:

wget http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz
wget http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gz
wget http://pecl.php.net/get/memcache-2.2.5.tgz

二、安装与配置

1、先安装libevent

tar zxvf libevent-1.4.13-stable.tar.gz
cd libevent-1.4.13-stable
./configure –prefix=/usr
make
make install

 

2、测试libevent是否安装成功

ls -al /usr/lib | grep libevent
libevent-1.1a.so.1
libevent-1.1a.so.1.0.2
libevent-1.4.so.2
libevent-1.4.so.2.1.3
libevent.a
libevent_core-1.4.so.2
libevent_core-1.4.so.2.1.3
libevent_core.a
libevent_core.la
libevent_core.so
libevent_extra-1.4.so.2
libevent_extra-1.4.so.2.1.3
libevent_extra.a
libevent_extra.la
libevent_extra.so
libevent.la
libevent.so

版本不同,可能文件列表不同。

3、安装memcached,同时需要安装中指定libevent的安装位置

tar zxvf memcached-1.4.4.tar.gz
cd memcached-1.4.4
./configure –with-libevent=/usr
make && make install

安装完成后会把memcached 自动放到 /usr/local/bin/memcached

4、测试是否成功安装memcached

ls -al /usr/local/bin/mem*
-rwxr-xr-x 1 root root 201869 12-14 21:44 /usr/local/bin/memcached

5、安装Memcache的PHP扩展

①安装PHP的memcache扩展

tar vxzf memcache-2.2.5.tgz
cd memcache-2.2.5
/usr/local/webserver/php/bin/phpize
./configure –enable-memcache –with-php-config=/usr/local/webserver/php/bin/php-config –with-zlib-dir
make
make install

/usr/local/webserver/php/bin/phpize 这个按自己实际安装路径默认在 /usr/local/php/bin/phpize

./configure –enable-memcache –with-php-config=/usr/local/webserver/php/bin/php-config 复制可能出错,需手输一次,并且注册两个“-”号的地方

 

②上述安装完后会有类似这样的提示:

Installing shared extensions: /usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/

 

*******************************************************

新版本下面的数据会自动改变

③把php.ini中的extension_dir = “./”修改为

extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/”

④添加一行来载入memcache扩展:extension=memcache.so

 

*******************************************************

三、memcached的基本设置

1.启动Memcache的服务器端:

memcached -d -m 10 -u root -l 202.207.177.177 -p 11211 -c 256 -P /tmp/memcached.pid

参数说明:

-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址202.207.177.177,
-p是设置Memcache监听的端口,我这里设置了11211,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,

2.如果要结束Memcache进程,执行:

kill `cat /tmp/memcached.pid`

也可以启动多个守护进程,不过端口不能重复。

3.检查Memcached是否启动

netstat -ant
tcp        0      0 202.207.177.177:11211       0.0.0.0:*                   LIST

11211端口已经打开,说明Memcached已正常启动。

4.重启CentOS

reboot

四、Memcache环境测试

运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始你的Memcache的征途吧!

1
2
3
4
5
6
7
8
9
<?php
 
$mem = new Memcache;
$mem ->connect( "202.207.177.177" , 11211);
$mem ->set( 'key' , 'This is a test!' , 0, 60);
$val = $mem ->get( 'key' );
echo $val ;
 
?>

著名的PHPCMS同样支持Memcached扩展:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
 
//MemCache服务器配置
//define('MEMCACHE_HOST', 'localhost'); //MemCache服务器主机
//define('MEMCACHE_PORT', 11211); //MemCache服务器端口
//define('MEMCACHE_TIMEOUT', 1); //S,MemCache服务器连接超时
class cache
{
  var $memcache ;
 
     function __construct()
     {
   $this ->memcache = & new Memcache;
   $this ->memcache->pconnect(MEMCACHE_HOST, MEMCACHE_PORT, MEMCACHE_TIMEOUT);
     }
 
     function cache()
     {
   $this ->__construct();
     }
 
  function get( $name )
     {
         return $this ->memcache->get( $name );
     }
 
     function set( $name , $value , $ttl = 0)
     {
          return $this ->memcache->set( $name , $value , 0, $ttl );
     }
 
     function rm( $name )
     {
         return $this ->memcache-> delete ( $name );
     }
 
     function clear()
     {
         return $this ->memcache-> flush ();
     }
}
?>

五、参考资料

对Memcached有疑问的朋友可以参考下列文章:
Linux下的Memcache安装:http://www.ccvita.com/257.html
Nginx 0.8.x + PHP 5.2.10(FastCGI)搭建胜过Apache十倍的Web服务器: http://blog.s135.com/nginx_php_v5/

 

memcache 使用方法 API

 

Memcache::add — 添加一个值,如果已经存在,则返回false
Memcache::addServer — 添加一个可供使用的服务器地址
Memcache::close — 关闭一个Memcache对象
Memcache::connect — 创建一个Memcache对象
memcache_debug — 控制调试功能
Memcache::decrement — 对保存的某个key中的值进行减法操作
Memcache::delete — 删除一个key值
Memcache::flush — 清除所有缓存的数据
Memcache::get — 获取一个key值
Memcache::getExtendedStats — 获取进程池中所有进程的运行系统统计
Memcache::getServerStatus — 获取运行服务器的参数
Memcache::getStats — 返回服务器的一些运行统计信息
Memcache::getVersion — 返回运行的Memcache的版本信息
Memcache::increment — 对保存的某个key中的值进行加法操作
Memcache::pconnect — 创建一个Memcache的持久连接对象
Memcache::replace — R对一个已有的key进行覆写操作
Memcache::set — 添加一个值,如果已经存在,则覆写
Memcache::setCompressThreshold — 对大于某一大小的数据进行压缩
Memcache::setServerParams — 在运行时修改服务器的参数


==================================

apache下使用memcache

不仅需要在php下进行memcache扩展(/ext  ^^^ /php.ini),也需要在apache里进行配置,一定要配置 PHPIniDir "d:/php"

分享到:
评论

相关推荐

    centos linux+apache+mysql+php+memcache+zend

    ### LAMP环境搭建详解:CentOS Linux + Apache + MySQL + PHP + Memcache + Zend #### 一、引言 LAMP(Linux + Apache + MySQL + PHP)是一种常用的Web服务器架构,广泛应用于各种网站和应用程序的开发与部署。...

    php apache mysql memcache redis mongodb

    【描述】:“php5.4.26 apache mysql memcache redis mongodb整套环境配置用到的包”提示了具体使用的软件版本,这是一个用于搭建开发或测试...PHP5.4.26、Apache、MySQL、Memcache、Redis和MongoDB的安装或配置所需的所有组件...

    centos 安装HTTP

    这个过程包括了Apache的安装、PHP环境的搭建以及Oracle Instant Client的支持,同时还涉及到了MySQL数据库的安装和配置,以及Memcache扩展的安装。下面我们将详细地探讨这些步骤。 首先,你需要下载Apache ...

    apache2.2.31 php5.3.29 memcache一键编译安装包.rar

    本程序包适用于无法联网情况一键编译安装apache2.2.31 php5.3.29 memcache用于64位环境下安装centos6系列,不是64位的不要下载。普通安装在一些特殊环境下不能连接互联网,所以这里把所有依赖包全部找齐了。源码编译...

    一键编译安装apache2.2.31+php5.3.29+memcache,适用于无法联网情况

    源码编译安装 apache2.2.31 + php5.3.29 + memcache 自动安装mysql,mysqlli,pdo_mysql,openssl,curl,gd,memcache等扩展。 chmod +x hj.sh ./hj.sh 如果提示:no such file or directory:说明hj.sh非unix编码重新...

    centos系统为php安装memcached扩展步骤

    ### CentOS系统为PHP安装Memcached扩展的详细步骤 在现代Web开发中,为了提高网站的性能和响应速度,缓存技术被广泛应用。其中,Memcached作为一种高性能、分布式内存对象缓存系统,在加速动态Web应用程序方面表现...

    memcache简介、安装 and in cakephp

    2. **安装库**:通过包管理器(如apt-get for Ubuntu或yum for CentOS)安装libevent库,因为Memcache依赖于它。 ``` sudo apt-get install libevent-dev ``` 3. **下载并编译Memcache**:从Memcache的官方...

    linux下安装php扩展memcache的方法

    如果编译成功,使用`make install`来安装扩展,并在php.ini中添加`extension=memcache.so`来启用扩展。然后重启PHP和Apache服务以使更改生效。 安装完成后,你可以通过PHP代码测试Memcache是否正确安装和工作,例如...

    linux下 php安装memcached扩展

    3. **安装扩展** ```bash make install ``` #### 五、配置 PHP.ini 完成安装后,还需要在 PHP 的配置文件 php.ini 中添加 Memcached 扩展的配置信息。 1. **修改 extension_dir 设置** 首先找到 `extension...

    CentOS 5 全功能WWW服务器搭建全教程

    此命令会自动选择最快的镜像源,并安装最新版本的Apache、MySQL以及PHP及其相关扩展,这些是构建一个完整Web服务器所必需的基础软件。 ##### 2. 配置系统环境 - **检查系统日志**: 确认系统是否正常运行,没有错误...

    linux下安装配置apache+php.pdf

    为了使Apache能够处理PHP脚本,我们需要安装PHP及其相关扩展。同样使用YUM安装: ```bash yum install php php-common php-gd php-mcrypt php-pear php-pecl-memcache php-mhash php-mysql php-xml php-mbstring...

    CentOS下安装Memcached和PHP Memcached扩展

    本文将详细介绍如何在CentOS上安装Memcached及其PHP Memcached扩展。 首先,让我们了解Memcached。Memcached是一款开源的、高性能的分布式内存对象缓存系统,它能用来存储数据和减少数据库负载,适用于各种分布式...

    yum命令安装php7和相关扩展

    在Linux系统中,尤其是基于RPM包管理的系统如CentOS,`yum`是...这样就完成了在CentOS系统中使用`yum`命令安装PHP7及其相关扩展的过程。请根据实际需求选择要安装的扩展,并确保配置文件正确无误,以确保系统稳定运行。

    nginx+apache+mysql+php+memcached+squid搭建门户网站

    - **PHP**:安装完成后需配置加速器eAccelerator,以及PHP的memcache扩展,以增强PHP应用性能。 #### 七、安装Squid - **Squid**:安装并配置Squid作为反向代理,同时利用其缓存功能进一步提高服务器响应速度。 #...

    centos6.5中用yum方式安装php5.4与apache2.2的步骤

    在Linux系统管理中,搭建LAMP(Linux、Apache、MySQL、PHP)...yum install php55w php55w-bcmath php55w-cli php55w-common php55w-devel php55w-fpm php55w-gd php55w-imap php55w-ldap php55w-mbstring php55w-mcrypt php55w-mysql php55w-odbc php55w-pdo php55w-pear php55w-pecl-igbinary php55w-xml php55w-xmlrpc php55w-opcache php55w-intl php55w-pecl-memcache...

    LANMP安装配置

    本文将深入探讨如何在CentOS操作系统上进行完整的LANMP安装与配置,并涉及MongoDB数据库和Memcache缓存服务的集成。 ### CentOS系统准备 首先,确保你的CentOS系统是最新的。通过运行以下命令更新系统: ```bash ...

Global site tag (gtag.js) - Google Analytics