`

Linux 下php扩展memcache的相关步骤以及疑难解析

    博客分类:
  • PHP
阅读更多

一、安装环境

    CentOS Release 5.3

    httpd-2.2.9

    php-5.2.6

 

二、所需软件

    libevent-1.4.9-stable.tar.gz (http://monkey.org/~provos/libevent/)
    memcache-2.2.5.tar.gz (http://pecl.php.net/package/memcache)
    memcached-1.2.7.tar.gz (http://www.danga.com/memcached/)

 

 三、安装及配置

1、安装libevent

    # tar xzvf libevent-1.4.9-stable.tar.gz

    # cd libevent-1.4.9-stable

    # ./configure --prefix=/usr

    # make

    # make install

 

2、测试 libevent 是否安装成功

    # ls  /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.2
    libevent.a
    libevent_core-1.4.so.2
    libevent_core-1.4.so.2.1.2
    libevent_core.a
    libevent_core.la
    libevent_core.so
    libevent_extra-1.4.so.2
    libevent_extra-1.4.so.2.1.2
    libevent_extra.a
    libevent_extra.la
    libevent_extra.so
    libevent.la
    libevent.so

 

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

 

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

    # tar xzvf memcached-1.2.7.tar.gz

    # cd memcached-1.2.7

    # ./configure --with-libevent=/usr

    # make

    # make install

 

注意:安装完成后,会把 memcached 自动放到 /usr/local/bin/memcached 。

 

4、测试是否成功安装 memcached

    # ls /usr/local/bin/memcached

    -rwxr-xr-x 1 root root 123483 11-28 15:07 /usr/local/bin/memcached

 

 

5、安装 memcache 的PHP扩展

①安装PHP的 memcache 扩展

    # tar xzvf memcache-2.2.5.tgz

    # cd memcache-2.2.5

    # /usr/local/php/bin/phpize

    Configuring for:
    PHP Api Version:         20041225
    Zend Module Api No:      20060613
    Zend Extension Api No:   220060519

   

    # ./configure --enable-memcache -with-php-config=/usr/local/php/bin/php-config --with-zlib-dir

    # make

    # make install

    Installing shared extensions:     /usr/local/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-20060613/"

 

③在 php.ini 中载入 memcache 扩展: extension=memcache.so

 

 

四、memcached 的基本配置

1、启动 memcache 的服务端:

    # memcached -d -m 10 -u root -l 127.0.0.1 -p 12006 -c 256 -P /tmp/memcached.pid

 

参数说明:  

    -d选项:以守护程序(daemon)方式运行 memcached,
    -m选项:是分配给 memcached 使用的内存大小,单位是MB,我这里是10MB。
    -u选项:运行 memcache 的用户,我这里指定 root。
    -l 选项:监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址127.0.0.1,
    -p选项:设置 memcache 监听的端口,我这里设置了12006,最好是1024以上的端口。默认端口为1211,所以饿可以不设置此参数。
    -c选项:最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
    -P选项:设置保存 memcache 的pid文件,我这里是保存在 /tmp/memcached.pid

 

2、结束 memcache 进程,执行如下命令: 

     # kill `cat /tmp/memcached.pid`

 

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

 

 

 五、memcache 环境测试

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

<?php
  $mem = new Memcache;
  $mem->connect("127.0.0.1", 12006);
  $mem->set('key', 'This is a test!', 0, 60);
  $val = $mem->get('key');
  echo $val;
?>

 

 

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

 

 <?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/

 

 

  

 主要摘自:(LixiPHP)http://blog.lixiphp.com/centos-linux-memcache-nginx-php-install/

 

 

分享到:
评论

相关推荐

    php memcache-3.0.9.tar.gz php7 扩展 linux 包

    《PHP7 Memcache扩展3.0.9在Linux上的安装与使用详解》 在Web开发领域,PHP作为服务器端脚本语言,广泛应用于构建动态网站。为了提高网站性能,开发者通常会利用缓存技术,而Memcache就是一种广泛应用的分布式内存...

    windows php memcache 扩展

    **PHP与Memcache扩展在Windows环境下的配置与应用** ...在Windows环境下,配置和使用PHP Memcache扩展需要关注兼容性、服务配置以及代码实现,通过合理的设计和优化,可以充分利用Memcache的性能优势。

    win下php-memcache5.4;5.2;5.3扩展和memcache服务端

    5.3扩展和memcache服务端”指的是在Windows操作系统环境下,适用于PHP 5.4、5.3和5.2版本的PHP-Memcache扩展,以及Memcache服务器端的相关资源。Memcache是一个广泛使用的高性能分布式内存对象缓存系统,它可以用来...

    windows php7-memcache扩展

    **Windows环境下PHP7-Memcache扩展的安装与配置** 在Windows服务器上运行PHP应用程序时,为了提高数据存储和检索的效率,我们常常会使用到Memcache扩展。Memcache是一款广泛使用的分布式内存对象缓存系统,它能有效...

    memcache 扩展,php5.5 32,64 位,以及其他版本下载地址

    这个扩展通常以`.dll`文件形式提供,例如 `memcache.dll`,这是Windows环境下PHP的动态链接库文件。在Linux或Mac等其他操作系统上,可能需要编译安装。 安装步骤通常如下: 1. **下载扩展**:首先,你需要从官方...

    php7 memcache扩展

    标题 "php7 memcache扩展" 描述 "php7.0 7.1 (vc14/vc15) memcache扩展 windows(x86/x64)" 提及了几个关键概念,包括PHP7、memcache扩展以及适用于Windows平台的不同架构版本。这里,我们将深入探讨这些主题,并...

    linux下安装php扩展memcache的方法

    在Linux环境下,安装PHP扩展Memcache是提升Web应用程序性能的关键步骤,因为Memcache是一个高效、分布式的内存对象缓存系统,它可以存储数据并减少对数据库的依赖,从而提高响应速度。以下是在CentOS 6.6 x86_64系统...

    php5.6 php7.0 php7.1 memcache.dll扩展

    “memcache php7 memcache.dll”标签进一步确认了这个扩展是针对PHP 7系列的,并且主要关注的是memcache.dll这个特定的文件,它是Windows环境下PHP与Memcached通信的关键组件。 在压缩包子文件的文件名称列表中,...

    php7.3.~redis和memcache扩展包.rar

    标题中的“php7.3.~redis和memcache扩展包.rar”表明这是一份针对PHP 7.3版本的Redis和Memcache扩展的压缩文件,适用于Windows操作系统。这两个扩展是PHP开发过程中常用的缓存管理工具,对于提升Web应用程序的性能至...

    php7,memcache扩展文件,windows

    标题 "php7,memcache扩展文件,windows" 涉及到的是PHP编程语言与Memcached缓存系统在Windows环境下的集成。Memcache是广泛应用于Web开发中的一个高性能分布式内存对象缓存系统,它可以减轻数据库负载,提高动态、...

    php5.4 memcache 扩展包

    PHP 5.4 是 PHP 语言的一个版本,它在2012年发布,提供了许多改进和新特性,包括更好的性能、错误处理机制以及对现代Web开发的支持。在这个环境中,Memcache 扩展是一个非常重要的组件,它允许 PHP 与 Memcached ...

    PHP5.5/5.6的 32&63 VC11 Memcache扩展php_memcache.dll

    PHP 添加 Memcache 扩展 : 下载包中包括如下: php_memcache-3.0.8-5.5-nts-vc11-x64.zip php_memcache-3.0.8-5.5-nts-vc11-x86.zip php_memcache-3.0.8-5.5-ts-vc11-x64.zip ...

    php5.3版本可用的memcache扩展

    这个扩展提供了丰富的函数接口,如`memcache_connect()`用于连接到Memcached服务器,`memcache_get()`和`memcache_set()`用于获取和设置缓存数据,以及`memcache_delete()`用于删除缓存项等。 描述中的“放到相应...

    PHP memcache 多版本拓展

    本篇文章主要围绕"PHP Memcache多版本拓展"进行详细讲解,包括其适用环境、安装步骤、使用方法以及与PHP7及以上版本的兼容性。 ### 一、适用环境 PHP Memcache多版本拓展库特别针对PHP7及以上版本进行了优化,覆盖...

    php_memcache-3.0.8-5.5 32位dll扩展模块 download下载

    2. **php_memcache.dll**:这是主要的PHP Memcache扩展的动态链接库文件,用于在PHP 5.5环境下加载和使用Memcache功能。 3. **LICENSE**:文件包含了该软件的许可协议,用户需要遵守这些条款才能合法使用和分发软件...

    memcache dll扩展满足各版本PHP

    “memcache dll扩展满足各版本PHP”这一标题表明,这是一个关于PHP的扩展,具体是memcache扩展的DLL动态链接库版本。DLL是Windows操作系统中的一个组件,它允许程序共享代码和资源,这里主要是为了在PHP环境中支持...

    Linux安装Memcache

    本文将详细介绍如何在Linux环境下安装和配置Memcache服务器端及PHP扩展。 首先,确保你的系统满足基本的安装条件。你需要一个支持编译的环境,通常在Linux发行版中,如Ubuntu、CentOS或Debian,这些环境已经预装。...

    php_memcache.dll扩展文件集合包

    运行此脚本,如果页面中显示`memcache`扩展的相关信息,说明已成功安装。 **Memcached客户端库** 在压缩包中还发现了`memcached-client-php.txt`和`memcached-client-php`,这些可能是指向PHP的Memcached客户端库...

    windos php_memcache扩展 php5.6

    将php_memcache扩展文件放在"/php/ext"文件夹下,是按照XAMPP的默认配置来安装扩展的常规步骤,因为XAMPP通常会在这个路径下查找PHP的扩展库。 "memcache.dll"是php_memcache扩展在Windows环境下以动态链接库形式...

    memcache for linux

    linux平台使用的memcache压缩包,解压缩之后运行make && make install安装, 然后/usr/local/memcache/bin/memcache -d -m 1024 -u root -p 11211 -c 1024命令运行memcache

Global site tag (gtag.js) - Google Analytics