Kyoto Tycoon + LevelDB 组合
Kyoto Tycoon 可以以插件形式嵌入到任意DBM类型的数据库里,
这是官方 Kyoto Tycoon 的文章,介绍如何在 Kyoto Tycoon 上用LevelDB
《LevelDB on Kyoto Tycoon》 http://fallabs.com/blog/promenade.cgi?id=30
中文翻译 http://blog.nosqlfan.com/html/1899.html
用户安装实践 http://blog.csdn.net/hzm7512/article/details/8671564
附几个Kyoto Tycoon python 接口
-
http://www.ulrichmierendorff.com/software/kyoto_tycoon/python_library.html (基于binary,推荐这个)
-
http://python-kyototycoon-binary.readthedocs.org/en/latest/ (基于binary)
-
https://github.com/mopemope/pykt (基于http,用c 写)
-
PHP 的接口 http://www.ulrichmierendorff.com/software/kyoto_tycoon/php_library.html
Kyoto Tycoon
一个轻量级的数据库服务器, 支持自动过期的实现,这个在各种需要处理缓存数据的程序中很有用。Kyoto Tycoon 也是一个叫Kyoto cabinet的DBM的网络接口。虽然这个DBM拥有很高的性能和并发能力,但是你在处理多进程共享一个数据库,或是需要远程访问一个数据库时感到头痛。而Kyoto Tycoon就是提供来处理Kyoto cabinet的并发处理和远程连接的。Kyoto tycoon由管理各种各样数据库的服务器进程和访问服务器的客户端程序库组成。
- Kyoto Tycoon http://fallabs.com/kyototycoon/
- Kyoto Cabinet http://fallabs.com/kyotocabinet/
kyoto tycoon 挂接 leveldb
安装顺序
kyoto tycoon 必须在 kyoto canbinet 安装之后,kt依赖于kc部分库。本文安装顺序是 leveldb、kc、kt。
安装leveldb
- 下载leveldb源码 https://github.com/google/leveldb
- 修改Makefile(关键点)
增加-fPIC命令参数
CFLAGS += -I. -I./include -fPIC $(PLATFORM_CCFLAGS) $(OPT)
CXXFLAGS += -I. -I./include -fPIC $(PLATFORM_CXXFLAGS) $(OPT)
- 编译安装:make && make install
- cp libleveldb.a /usr/local/lib
- cp -r include/leveldb /usr/local/include
安装kc
wget https://dbmx.net/kyotocabinet/pkg/kyotocabinet-1.2.79.tar.gz
tar -zxvf kyotocabinet-1.2.79.tar.gz
cd kyotocabinet-1.2.79
./configure
make
make install
安装kt
wget https://dbmx.net/kyototycoon/pkg/kyototycoon-0.9.56.tar.gz
tar -zxvf kyototycoon-0.9.56.tar.gz
cd kyototycoon-0.9.56
./configure
make &&make install
cd ./kyototycoon-0.9.56/lab/leveldb
make
cp ktplugdblevel.so /usr/local/lib
echo "/usr/local/lib" >>/etc/ld.so.conf
ldconfig -v
https://github.com/AlticeLabsProjects/kyoto
测试
- 打开服务器端:
ktserver -pldb /usr/local/lib/ktplugdblevel.so casket.ldb
- 客户端插入数据:
ktremotemgr set -host 172.17.0.4 -port 1978 11 haha
- 客户端查询数据:
ktremotemgr get -host 172.17.0.4 -port 1978 11
See Also
- 为什么选 kt (kyoto tycoon) + leveldb - 海量数据查询的方案选型
- leveldb+bottle+gevent 是个不错的组合
- HyperLevelDB 提高了LevelDB 性能的一个分支
- 使用 rsync 同步 leveldb 应注意的问题
- Golang boltdb 与 leveldb 的读写性能比较
Nearby
- 上一篇 › 用Tornado 做 leveldb server
- 下一篇 › Memcached 数据持久化 MemcachedDB