memcached 和libmemcached 安装及关系

今天安装memcached服务器应用,libmemcached客户端库及php的扩展memcached 遇到的一些问题:

当libmemcached-1.0.17.tar.gz用17这个版本时,和php 扩展memcached-2.1.0.tgz 时,客户端库libmemcached可以正常安装,但是php的扩展memcached安装总是有错误,最后把libmemcached换成16版本才可以正常安装,从网上搜索文章说,客户端17的版本有bug,不知道是否是这样,最后用是下面说的版本,安装没有问题

最后用了两台虚拟机做了个小测试,终于明白了它们之间的关系了:

1、memcached 服务器

因为是服务器,只需要安装memcached应用就可以了,具体安装下面有介绍,

安装完成后启动服务就OK了

启动命令: /usr/local/memcached/bin/memcached -d -u root -l 192.168.1.100 -m 64m -p 11211 -c 2480

2、客户端,以PHP客户端为例

需要安装libmemcached客户端库

php的扩展memcached,因为该扩展是依赖libmemcached的API

安装完成,在PHPINFO页面上,有memcached扩展模块就表示OK

结束了,这样如果服务器IP是192.168.1.100,客户端IP是192.168.1.155,做个小测试:

$mem = new Memcached;
$mem->addServer("192.168.1.100", 11211, 90);
$mem->set('key', 'This is a test!', 60);
$val = $mem->get('key');
echo $val;

下面介绍具体的安装过程

1、下载最新的memcached:服务器应用

官网下载:http://memcached.org/

下载链接:http://www.memcached.org/files/memcached-1.4.16.tar.gz  当前最新本

memcached 是一个高性能、分布式的内存对象缓存系统,通过内存的数据缓存来降低对数据库的访问,从而提高动态内容应用网站的速度。memcached 官方开发释放出来的,只

是应用的服务器端程序,它发布了服务器端的连接读写协议,客户端的实现,则根据动态内容应用网站使用的动态脚本的不同,而有多种,具体列表,可查看官方网站。Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering.



2、下载libmemcached:客户端库

官网下载:http://libmemcached.org/libMemcached.html

下载地址:https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached-1.0.16.tar.gz

libmemcached 是一个 memcached 的库,客户端库,C 和 C++ 语言实现的客户端库,具有低内存占用率、线程安全、并提供对memcached功能的全面支持。

libMemcached is an open source C/C++ client library and tools for the memcached server (http://danga.com/memcached). It has been designed to be light on memory usage, thread safe, and provide full access to server side methods.

3、下载客户端

许多语言都实现了连接memcached的客户端,这些客户端都是依赖libmemcached客户端库的。

官网列出的语言有:

Ruby
http://github.com/fauna/memcached/tree/master
Perl
http://code.google.com/p/perllibmemcached/
Python
http://code.google.com/p/python-libmemcached/
http://pypi.python.org/pypi/pylibmc
PHP
http://pecl.php.net/package/memcached
(In Japanese) http://labs.gree.jp/Top/OpenSource/libmemcached.html

MySQL
Memcached Functions for MySQL
Postgres
PgMemcache
Windows Version
https://code.launchpad.net/~mattn/libmemcached/libmemcached-win32

简要说明,以PHP为例,PHP的客户端就是它的扩展,从该链接下载(http://pecl.php.net/package/memcached),安装之后就可以连接到服务器


安装过程如下:

  214  wget  https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached-1.0.16.tar.gz
  215  tar zxvf libmemcached-1.0.16.tar.gz -C /usr/local/src/
  216  cd /usr/local/src/libmemcached-1.0.16/
  217  ll
  218  ./configure -prefix=/usr/local/libmemcached --with-memcached
  219  make
  220  make install
  221  cd ..
  222  ll
  223  cd /home/wuyue/soft/
  224  wget http://pecl.php.net/get/memcached-2.1.0.tgz
  225  tar zxvf memcached-2.1.0.tgz -C /usr/local/src/
  226  cd -
  227  ll
  228  cd src/memcached-2.1.0/
  229  ll
  230  /usr/local/php/bin/phpize 
  231  ./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached/
  232  make
  233  make install

如果有什么问题,请提出意见,在此只为分享一下安装过程

你可能感兴趣的:(PHP)