linux下tokyocabinet存储引擎java接口的配置
08-12
tokyocabinet是一个性能极高的存储引擎,除支持传统的keyvalue存储外,还支持table表的存储,具体可以看这里 http://fallabs.com/tokyocabinet/spex-en.html#tctdbapi
使用tc常用的工具就是作者另外写的一个api:tt http://fallabs.com/tokyotyrant/ 兼容memcached协议,非常好用和高效。
但这里我期望使用的是table表,它提供了C的接口,但没有php方便调用的的方式,所以张宴同学做了一个很方便的tcsql http://blog.s135.com/tcsql/
因为我C的水平问题,一直没有写出稳定的操作接口,并且张宴同学tcsql的设计理念非常好,支持分布式的结构。
因此我改变了设计思路,并且使用我想对熟悉的java接口来做这个事情。
linux下配置过程:
环境装备:标准JDK环境
1、下载java api http://fallabs.com/tokyocabinet/javapkg/
2、解压后进入 tokyocabinet-java-1.24 目录
3、运行 ./configure –prefix=/opt/tcjava && make && make install
4、环境变量配置:
这里是包含JDK的全部配置
export JAVA_HOME=/opt/jdk
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:/opt/tcjava/lib/tokyocabinet.jar:/opt/tcjava/lib/libjtokyocabinet.so:/opt/tcjava/lib/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/tcjava/lib/
export PATH=$PATH:$JAVA_HOME/bin
export JRE_HOME=$JAVA_HOME/jrei
JAVA_OPTS="-server"
JAVA_OPTS="$JAVA_OPTS -Xms64m -Xmx128m"
JAVA_OPTS="$JAVA_OPTS -D64 -Djava.library.path=/usr/local/lib/"
把以上代码增加到 /etc/profile 文件尾部,而后 source /etc/profile
配置完成,开始测试:
进入 tokyocabinet-java-1.24/example 执行 make
然后运行 java TCTDBEX 如果看到跟代码中预期的结果,则tc的javaapi在此服务器上安装成功。