php5.3安装libmemcached扩展的教程

libmemcached是一个php 加速的插件了,但有很多要在安装配置libmemcached扩展时会碰到一些问题了,今天我们来看看php5.3安装libmemcached扩展的教程.

libmemcached 是一个 memcached 的库,客户端库,C 和 C++ 语言实现的客户端库,具有低内存占用率、线程安全、并提供对memcached功能的全面支持,它还采用 多种命令行工具:memcat,memflush,memrm,memstat,并memslap(负载代),程序库一直在设计,让不同的散列方法对密钥,分割的钥匙,并使用统一的散列分配hash一致性存储

multi get/set

自动把key hash 为int,避开了memcache key字符串默认小于255Byte的限制,好久没有配置服务器,一直以为libmemcached的php memcached 已经纳入基本安装包了,到头来还需要自己编译.整个安装过程很多暗坑,尝试了几次才成功.

安装分两步

安装libmemcached,目标是so和header文件

安装memcachedphp extensions

libmemcaced 分为两大版本0.x和1.x, 1.x的版本从2011-09-28开始,编译很麻烦,需要gcc4.0以上的专门配置,compile无比慢. 0.x版本就简单很多,最高版本是0.53,所以选择安装0.53,极品总是成对出现,php的memcahed也从2.1.0开始,要求libmemcached 必须是1.0.x版本,libmemcaced我用的0.53,那php-memcahed 就选择2.0.0. 开源软件的版本维护是一团烂帐

安装libmemcached

  1. wget https://launchpad.net/libmemcached/1.0/0.53/+download/libmemcached-0.53.tar.gz
  2. tar xvfz libmemcached-0.53.tar.gz
  3. cd libmemcached-0.53
  4. ./configure --prefix=/opt/libmemcached
  5. make && make install //开源软件:phpfensi.com

安装php扩展

  1. wget http://pecl.php.net/get/memcached-2.0.0.tgz
  2. tar zvxf memcached-2.0.0.tgz
  3. cd memcached-2.0.0/
  4. ./configure --enable-memcached --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/opt/libmemcached/
  5. make && make install

make install 是 把memcached.so 安装到 ${php install dir}/extensions/no-debug-non-zts-20090626/,这个目录随着php的版本不同而不同.

最后一步,修改php.ini,加上 extension=memcached.so

需要注意的是,libmemcached 不是 libmemcache,它们是两个不同的客户端库,前者现在的开发比较活跃,后者已经有很长时间没有更新了.