陌陌CTO李志威GoRedis:SSD替代内存方案.pdfVIP

  • 177
  • 0
  • 约8.52千字
  • 约 28页
  • 2017-07-29 发布于湖北
  • 举报

陌陌CTO李志威GoRedis:SSD替代内存方案.pdf

GoRedis介绍 陌陌/李志威/CTO “GoRedis是基于RocksDB ,使⽤Go语⾔编写的⾼效 Redis Server ,提供Redis所不具备的众多特性。” -goredis.io RocksDB ❖ RocksDB 由Facebook基于LevelDB改进⽽来,能充分利 ⽤多核CPU ,并提供系列的扩展特性 ❖ LevelDB是Google开源的⾼性能Key-Value数据库,基于 ⽂件系统,主要解决⾼并发随机写,以及海量存储的需 求,配合SSD能提供⾮常⾼的随机读性能 ❖ Key有序存储,让RocksDB实现Redis数据结构提供了可 ⾏性 Go语⾔ ❖ Go是Google在近年推出的⼀个全新的编程语⾔ ❖ 充分利⽤多CPU ;强类型;简化开发;貌美C/C++的速 度 Redis Server Clients: Jedis/Pedis/ redis-py/hiredis ❖ 实现了Redis协议,并⽀持⼤ 部分数据指令 GoRedis ❖ 对开发者来说,服务端是 Redis Server Protocol GoRedis或是Redis基本⽆异 (Golang) RocksDB (SSD) GoRedis特性 ❖ 基于RocksDB获得⼤量特性 ❖ “零” 内存,数百万Field的Hash ,⼏千万Member的 Sorted Set ,都不会消耗额外的内存 ❖ 海量存储,基于RocksDB能提供亿级的数据存储 ❖ 性能可观,在SSD下,Get /Set 6w+/s GoRedis特性 ❖ 快速启动,没有类似Reload RDB的过程,可以快速重启 实例 ❖ 增量同步,GoRedis主从情况下,从库断开后不会全量同 步(参考MongoDB ) ❖ MultiSlaveOf ,⼀个GoRedis可以同时作为多个Redis的 从库,实现集群备份 ❖ 完善⽇志,为DBA提供完善的各类⽇志输出 适⽤场景 ❖ 海量数据存储 ❖ 安全数据存储 ❖ 节省内存 性能测试 ❖ 以下测试基于Flash卡 ❖ redis-benchmark -p 1602 -n 1000000 -c 20 -t set,get -r 100000000 ❖ SET :68742.70 requests per second ❖ GET :72150.07 requests per second 性能测试 ❖ redis-benchmark -p 1602 -n 1000000 -c 20 -r 100000000 rpush mylist __rand_int__ ❖ RPUSH :25012.51 requests per second 磁盘IO

文档评论(0)

1亿VIP精品文档

相关文档