玩转tokyotyrant

来源:互联网 发布:九大排序算法 编辑:程序博客网 时间:2024/06/05 08:29

玩转tokyotyrant
一 部署
tokyocabinet是存储引擎DBM
tokyo tyrant是一个可持久化的缓存服务器,类似memcachedb,tokyo tyrant本身是个缓存服务器,但需要tokyo cabinet作为存储引擎,就像memcachedb中的memcache需要berkeley db一样.
当做为Hash表数据库使用时,每个key必须是不同的,因此无法存储两个key相同的值。提供了以下访问方法:提供key,value参数来存储,按 key删除记录,按key来读取记录,另外,遍历key也被支持,虽然顺序是任意的不能被保证。这些方法跟Unix标准的DBM,例如GDBM,NDBM 等等是相同的,但是比它们的性能要好得多(因此可以替代它们) 
当按B+树来存储时,拥用相同key的记录也能被存储。像hash表一 样的读取,存储,删除函数也都有提供。记录按照用户提供的比较函数来存储。可以采用顺序或倒序的游标来读取每一条记录。依照这个原理,向前的字符串匹配搜 索和整数区间搜索也实现了。另外,B+树的事务也是可用的。

tokyocabinet-1.4.47.tar.gz下载地址
http://fallabs.com/tokyocabinet/tokyocabinet-1.4.47.tar.gz
tokyotyrant-1.1.41.tar.gz下载地址 
http://fallabs.com/tokyotyrant/tokyotyrant-1.1.41.tar.gz

安装tokyocabinet
1. ./configure --prefix=/usr/local/tokyocabinet
2. make
3. make install

安装tokyotyrant
1. ./configure --prefix=/usr/local/tokyotyrant --with-tc=/usr/local/tokyotabinet
2. make
3. make install

启动服务
ttserver
检查
在启动是如果出现类似下面的错误
2012-12-21T17:51:16+08:00 SYSTEM --------- logging started [8406] --------
2012-12-21T17:51:16+08:00 SYSTEM server configuration: host=(any) port=0
2012-12-21T17:51:16+08:00 ERROR invalid socket path
原因是执行的路径不对,请使用安装路径(本文/usr/local/tokyotyrant/bin/ttserver)绝对路径执行,执行时可以后台
如:/usr/local/tokyotyrant/bin/ttserver &
将看到类似信息:
2012-12-21T17:48:53+08:00 SYSTEM --------- logging started [8340] --------
2012-12-21T17:48:53+08:00 SYSTEM server configuration: host=(any) port=1978
2012-12-21T17:48:53+08:00 SYSTEM maximum connection: 1048575
2012-12-21T17:48:53+08:00 SYSTEM opening the database: *
2012-12-21T17:48:53+08:00 SYSTEM service started: 8340
2012-12-21T17:48:53+08:00 INFO timer thread 1 started
2012-12-21T17:48:53+08:00 INFO worker thread 1 started
2012-12-21T17:48:53+08:00 INFO worker thread 2 started
2012-12-21T17:48:53+08:00 INFO worker thread 3 started
2012-12-21T17:48:53+08:00 INFO worker thread 4 started
2012-12-21T17:48:53+08:00 INFO worker thread 5 started
2012-12-21T17:48:53+08:00 INFO worker thread 6 started
2012-12-21T17:48:53+08:00 INFO worker thread 7 started
2012-12-21T17:48:53+08:00 INFO worker thread 8 started
2012-12-21T17:48:53+08:00 SYSTEM listening started
表示成功

make check(在tokyotyrant源码下执行)

二 运行
存放: bin/tcrmgr put 127.0.0.1:1978 key value
2012-12-21T17:49:59+08:00 INFO connected: 127.0.0.1:42036
2012-12-21T17:49:59+08:00 INFO connection finished

获取: bin/tcrmgr get 127.0.0.1:1978 key
结果:
2012-12-21T17:50:36+08:00 INFO connected: 127.0.0.1:42043
value
2012-12-21T17:50:36+08:00 INFO connection finished


待续。。。

原创粉丝点击