一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

php memcached安装与使用

时间:2011-01-14 编辑:简简单单 来源:一聚教程网

php教程 memcached安装与使用

1.简介

memcache模块是一个高效的守护进程,提供用于内存缓存的过程式程序和面向对象

的方便的接口,特别是对于设计动态web程序时减少对数据库教程的访问。

memcache也提供用于通信对话(session_handler)的处理。

更多memcache 模块相关信息可以到 http://www.danga.com/memcached/ 查阅。

1.1.memcache在php.ini中的配置项列表 memcache在php.ini中的配置项列表
名称
默认值
是否可变
改变日志

memcache.allow_failover
“1”
php_ini_all
available since memcache 2.0.2.

memcache.max_failover_attempts
"20"
php_ini_all
available since memcache 2.1.0.

memcache.chunk_size
"8192"
php_ini_all
available since memcache 2.0.2.

memcache.default_port
"11211"
php_ini_all
available since memcache 2.0.2.

memcache.hash_strategy
"standard"
php_ini_all
available since memcache 2.2.0.

memcache.hash_function
"crc32"
php_ini_all
available since memcache 2.2.0.

session.save_handler
"files"
php_ini_all
supported since memcache 2.1.2

session.save_path
""
php_ini_all
supported since memcache 2.1.2

有关 php_ini_* 常量进一步的细节与定义参见php手册php.ini 配置选项。


下面摘一段代码,给大家一个直观的印象:(假设memcached安装在172.10.10.10上

面,端口号12121)

$memcache = new memcached();

$memcahce->connect('172.10.10.10', 12121);

$memcache->set('key', 'value');

$memcache->get('key');

上面的主要完成了memcached的简单操作流程:连接memcached服务器,设置值,取

值('key'的值是'value');

 

这里需要向大家说明一下addserver函数和connect函数,addserver是将多个服务器

放在连接池,而connect只是将连接某一台服务器;如果在使用了addserver,再使

用connect,这里就会只使用一台服务器。

以下代码是简单模拟的客户端操作

$fp = fsocketopen('172.10.10.10', 12121, $errorno, $errstr, 1);

if(!$fp)

  echo "$errstr";

else

{

  $out = "get key rn";

  fwrite($out);

  while(!feof($fp))

    $str  . = fgets($fp);

  

  if(stripos($str, 'end') ===0)

    exit("no value find")

  $arr = implode('rn', $str);

  echo $arr[1];

}

简单解释上面的代码,使用fsocketopen打开服务器的socket通讯接口,然后向其发

送get key命令, 然后获取返回的数据,并解析返回的数据。这里都没有做异常的

处理,在编程的时候要填

 

memcached 是一个键值存储系统,它将关键数据存储在内存中,大大减少存取数据

的时间。使用memcached的好处不言而喻,它不仅减少了系统访问数据库的压力,而

且提高系统的反应速度。至于什么样的系统需要使用memcache,笔者建议数据量大

,访问频繁系统可以采取memcached作为缓存的中间层。

使用memcached的缺点除了增加程序的代码量,还有就是不能保证数据库的实时性,

另外在第一次初始化数据库会需要额外的时间。但是这些的缺点比起它的优点是很

微不足道

热门栏目