Wednesday, September 8, 2010
 

ubuntu下memcachedb的安装

 memcachedb是 一个由新浪网的开发人员开放出来的开源项目,给memcached分布式缓存服务器添加了Berkeley DB的持久化存储机制和异步主辅复制机制,让memcached具备了事务恢复能力、持久化能力和分布式复制能力,非常适合于需要超高性能读写速度,但是 不需要严格事务约束,能够被持久化保存的应用场景,例如memcachedb被应用在新浪博客上面。

首先使用 apt-get 安装  libevent-dev php5-memcache libdb-4.6-dev
sudo apt-get install libevent-dev php5-memcache libdb-4.6-dev
上面的步骤你可以使用ubuntu的新立得软件也可以获得,记得php5-memcache 的扩展可能要修改php.ini文件,在ubuntu里面修改memcache.ini修改

; uncomment the next line to enable the module
extension=memcache.so//去掉前面的注释

然后到 http://memcachedb.org/ 下载最新版本的 memcachedb 解压

#如果您要存储的内容的键值的长度和单笔内容的长度有变化,您需要更改一个文件 memcachedb.h

vim memcachedb.h

#define END_LEN 32               —-> 这是是 Key+Value 的最大长度
#define END_LEN_STR “31″   —> 这是是 key 的最大长度

#默认key键值只预留了31个字节的长度,单笔数据最长是32个字节数。

#例如您如果需要用这个玩艺来存储文本内容数据,假设您的键值是一个32个字节的md5,单笔数据允许最长10K,那您可以设定

#define END_LEN 102400               —-> 这是是 Key+Value 的最大长度
#define END_LEN_STR “32″   —> 这是是key的最大长度

#修改完之后,直接make就行

./configure
make

创建如下几个目录:

/usr/local/memcachedb/
/usr/local/memcachedb/data

使用 下面的命令起动 memcachedb

sudo /usr/local/bin/memcachedb -p21201 -P /var/run/memcachedb.pid -f /usr/local/memcachedb/data/memcachedb.db -H /usr/local/memcachedb/ -d -u root -N

编辑一个 test.php :

<?php
function getmicrotime(){
list($usec, $sec) = explode(” “,microtime());
return ((float)$usec + (float)$sec);
}

$m = new Memcache();

$m->addServer(’localhost’, 21201, true);

$max = 1000000;

$time_start = getmicrotime();
for($i = 0 ; $i < $max; $i++)
{
$m->set(’test’ . $i , $i);
}
$time_end = getmicrotime();
$time = $time_end - $time_start;
echo “运行时间: $time seconds”; //输出运行总时间

?>

 

Tags: , , ,

Comments

No comments so far.
  • Leave a Reply
     
    Your gravatar
    Your Name
     
     
     
     
     
 
About This Website

Lamp development & SEO & Plan of Website & Project Managment

Learn more »
Follow Us (SNS)
Help & Support

more about Bruce.xu»

Get in touch

QQ: +252339382
Email: shjuto @ gmail.com

Online contact form »