Tokyo Cabinet 是日本人 Mikio Hirabayashi(平林幹雄)のページ 开发的一款DBM数据库(注:大名鼎鼎的DBM数据库qdbm就是他开发的),该数据库读写非常快。insert:0.4sec/1000000 recordes(2500000qps),写入100万数据只需要0.4秒。search:0.33sec/1000000 recordes (3000000 qps),读取100万数据只需要0.33秒。下图为各种key-value数据库读写数据的性能 测试 ,可以看出Tokyo Cabinet的速度是非常快的。
Tokyo Tyrant 提供dbm数据库Tokyo Cabinet的网络接口 。它使用简单的基于TCP/IP的简单二进制协议进行通信。同时它拥有Memcached兼容协议并且可以用HTTP/1.1协议进行数据交换。所以实现了跨平台,跨语言 使用Tokyo Tyrant。采用热备份,更新日志记录,复制(replication)来实现高可用性和高可靠性。到目前为止,Tokyo Tyrant只能运行在inux, FreeBSD, Mac OS X, Solaris。
下面我们介绍如何安装 Tokyo Tyrant。
首先我们安装Tokyo Cabinet.
]#wget http://tokyocabinet.sourceforge.net/tokyocabinet-1.4.9.tar.gz ]#tar -xzvf tokyocabinet-1.4.9.tar.gz ]# cd tokyocabinet-1.4.9 ]# ./configure ]# make ]# make install |
OK,我们装好了Tokyo Cabinet,再继续安装Tokyo Tyrant。
]# wget http://tokyocabinet.sourceforge. ... yrant-1.1.16.tar.gz ]# tar -xzvf tokyotyrant-1.1.16.tar.gz ]#cd tokyotyrant-1.1.16 ]# ./configure ]# make ]#make install |
OK,我们目前就完成了Tokyo Tyrant的安装。安装非常的简单。下面我们简单启动一个数据库,测试我们是否安装成功。
]# ./ttservctl start
启动完成。这是自带的一个启动脚本,你可以拷贝到到任意目录,修改里面的参数。
]# telnet 127.0.0.1 1978
然后我们telnet到1978端口,因为刚才的脚本默认启动的数据库使用了1978端口。
如果顺利,你可以看到可以连通,键入stats然后回车,可以看到一些类似如下的状态信息
stats STAT pid 24755 STAT uptime 37 STAT time 1236396011 STAT version 1.1.16 STAT rusage_user 0.000000 STAT rusage_system 0.008998 STAT curr_items 0 STAT bytes 4198720 END |
后面的主题(不定期更新):
Tokyo Tyrant的启动参数和性能优化
Tokyo Tyrant的memcache兼容协议的一些问题及解决
Tokyo Tyrant的高可用性和高可靠性
Tokyo Tyrant和nginx的结合实现高并发和高可用性的
改造Tokyo Tyrant,让其用于高性能的ajax服务器端
用Tokyo Tyrant构造一个FIFO队列服务器
使用实例