Memcachedb 分布式持久存储系统

      对于项目的需要是多样化的,应用的解决方案也就是应运而生,Memcached 分布式缓存系统大家都知道,是完全基本于内存缓存的,但数据并不能持久存储,但使用 Memcached + TTServer 配合就可以达到持久缓存存储系统。在早一段时间听说国内新浪网开发了一套基于 memcahced 的分布式持久存储系统:Memcachedb。今天尝试了一下,果然不错,操作简易,功能强大。
一、Memcached 是什么
Memcachedb = memcached + Berkeley DB
Memcachedb 是一个由新浪网的开发人员开放出来的开源项目,支持高并发的分布式持久存储系统,并且完全兼容 memcached 协议。
前端:memcached 的网络层; 后端:Berkeley DB存储。
官方网站:http://www.memcachedb.org
二、Memcached的安装
Memcachedb 跟 memcache 一样,网络socket数据处理依赖于libevent,所以,在安装之前需要下载三个安装包,即 libevent、Berkeley Db以及memcachedb。
1. 安装libevent (V1.3+)
Libevent http://monkey.org/~provos/libevent/
[root@localhost src]# tar zxvf libevent-1.3.tar.gz
[root@localhost src]# cd libevent-1.3
[root@localhost src]# ./configure –prefix=/usr
[root@localhost src]# make
[root@localhost src]# make install

2. 安装 Berkeley Db (V4.7+)
Berkeley Db http://www.oracle.com/technology/software/products/berkeley-db/index.html
[root@localhost src]# tar zxvf db-4.7.25.tar.gz
[root@localhost src]# cd db-4.7.25
[root@localhost db-4.7.25]# cd build_unix/
[root@localhost build_unix]# ../dist/configure
[root@localhost build_unix]# make
[root@localhost build_unix]# make install
#如果没有指定特殊安装路径,编译完成后,需要将Berkeley Db运行库的路径添加到系统配置里面
[root@localhost build_unix] # echo "/usr/local/BerkeleyDB.4.7/lib/" >> /etc/ld.so.conf
#重载系统Ld运行库
[root@localhost build_unix] # ldconfig

3. 安装 Memcachedb (V1.2.0)
Memcachedb http://code.google.com/p/memcachedb/
[root@localhost src]# tar zxvf memcachedb-1.2.0.tar.gz
[root@localhost src]# cd memcachedb-1.2.0
[root@localhost memcachedb-1.2.0]# ./configure -with-libevent=/usr --enable-threads //支持线程
[root@localhost memcachedb-1.2.0]# make
[root@localhost memcachedb-1.2.0]# make install

三、启动 Memcachedb deamon 进程
[root@localhost bin]# memcachedb -p21201 -d -r -u root -f 21201.db -H /data1/demo -N -P /data1/logs/21201.pid
memcachedb: error while loading shared libraries: libdb-4.7.so: cannot open shared object file: No such file or directory
报错:Berkeley Db 文件找不到,将其文件路径加入就行
[root@localhost bin]# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/BerkeleyDB.4.7/lib
[root@localhost bin]# memcachedb -p21201 -d  -r -u root -f 21201.db -H /data1/demo -N -P /data1/logs/21201.pid

四、命令行操作
[root@localhost bin]# telnet 127.0.0.1 21201
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
set wan 0 0 4   
1234
STORED
get wan
VALUE wan 0 4
1234
END
delete wan
DELETED

五、查看 Memcachedb 进程
[root@localhost memcachedb-1.2.0]# ps aux | grep memcachedb
root     19914  0.0  6.2 135864 16084 ?        Ssl  15:59   0:00 memcachedb -p21201 -d -r -u root -f 21201.db -H /data1/demo -N -P /data1/logs/21201.pid
root     20226  0.0  0.2   3916   668 pts/1    R+   17:08   0:00 grep memcachedb

六、结束 Memcachedb 进程
[root@localhost memcachedb-1.2.0]# kill `cat /data1/logs/21201.pid `


For more: http://www.memcachedb.org

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值