一个key-value存储系统,带有客户端和服务器端。使用很是方便。git
使用B+树做为存储引擎,客户端和服务器端使用TCP协议进行通讯。github
代码采用C++实现,底层将客户端和服务器通讯封装成了一个网络库,里面还有些还不错的实现可供看看,好比线程池、工做队列、Reactor设计模式实现等等。设计模式
项目地址:https://github.com/zinx2016/Explorer (欢迎你们给star :)服务器
make网络
首先启动服务器程序:线程
而后,运行客户端程序 :设计
首先,运行服务器程序 :
./exp-srvserver
而后,运行客户端程序 :
./exp-cliblog
插入key-value :
> set zx 1队列
查找key :
> get zx
更新key :
> update zx 2
删除key :
> del zx
显示存储系统目前状态 :
> stat
帮助命令 :
> h
退出客户端 :
> q
Explorer默认采用字符串做为key类型,int做为value类型全部的key-values都存储在一个文件中,文件名为test.db。能够在源文件test/kvstore/exp-server/exp-server.cc中修改文件名及文件位置。