SSDB 是一个 C/C++ 语言开发的高性能 NoSQL 数据库, 支持 zset(sorted set), map(hash), kv, list 等数据结构, 用来替代或者与 Redis 配合存储十亿级别的列表数据. SSDB 同时也被国内外业界的众多互联网企业所使用, 如 QIHU 360, TOPGAME, 汽车之家, 比亚迪等.
项目主页: https://github.com/ideawu/ssdb
SSDB 文档: http://ssdb.io/docs/zh_cn/
谁在用 SSDB: http://ssdb.io/docs/zh_cn/users.html
官方QQ群: 170983373
2014开源中国开源世界高峰论坛, 中国开源优秀项目奖项目
SSDB 的主要特点:
- 支持 zset, map/hash, list, kv 数据结构, 可替代 Redis
- 特别适合存储大量集合数据, 支持丰富的数据结构: key-value, key-map, key-zset, key-list.
- 使用 Google LevelDB 作为存储引擎
- 支持主从同步, 多主同步
- 客户端支持 PHP, C++, Python, Lua, Java, Ruby, nodejs, Go 等
- 内存占用极少
- 图形化界面管理工具(phpssdbadmin)
PHP API
<?php require_once('SSDB.php'); $ssdb = new SimpleSSDB('127.0.0.1', 8888); $resp = $ssdb->set('key', '123'); $resp = $ssdb->get('key'); echo $resp; // output: 123
PHP API 文档: http://ssdb.io/docs/zh_cn/php/
SSDB vs Redis
SSDB 架构
ssdb 127.0.0.1:8888> export backup.ssdb
5%
10%
15%
20%
25%
30%
35%
40%
45%
50%
55%
60%
65%
70%
75%
80%
85%
90%
95%
100%
105%
110%
115%
120%
125% Reply
操作类型 调用次数之差 等待时间之差(ms) 处理时间之差(ms)
multi_zset 279533 12854 15719
zclear 6008 6333 67308
hclear 1818 2977 9180
zrange 40971 1103 11537
multi_hset 672 16 1597
hgetall 17898 508 5950
multi_hdel 24 505 2
hset 261785 5486 9088
io性能:
avg-cpu: %user %nice %system %iowait %steal %idle
17.46 0.00 1.05 7.38 0.00 74.11
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
xvda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
xvdb 0.00 2139.20 3.80 203.00 59.20 8360.80 81.43 43.48 206.01 1.74 35.88
楼主大侠能帮忙定位一下问题吗?是硬盘的性能比较低,还是其他原因呢。 Reply
ERROR! autoconf required! install autoconf first
Makefile:4: build_config.mk: No such file or directory
make: *** No rule to make target `build_config.mk’. Stop. Reply
root 38545 38489 0 16:53 pts/2 00:00:00 /bin/sh ./ssdb-cli
root 38550 38545 0 16:53 pts/2 00:00:00 /bin/sh ./../deps/cpy/cpy ./ssdb-cli.cpy
root 38552 38550 0 16:53 pts/2 00:00:00 python ./../deps/cpy/cpy.py ./ssdb-cli.cpy
root 40953 39614 0 18:27 pts/4 00:00:00 grep –color=auto ssdb
运行一段时间之后,多出两个进程,38545/38550不知道这两个线程作什么用? Reply
谢谢! Reply