笔者在学习 goredis 实现方案的过程中,在很大程度上借鉴了 godis 项目,在此特别致敬一下作者. 附上传送门:https://github.com/HDT3213/godis/
本着学习和实践的目标, 基于 100% 纯度 go 语言实现的 “低配仿制” redis ,实现到的功能点包括:
- tcp服务端搭建
- 基于go自带netpoller实现io多路复用
- 还原redis数据解析协议
- 常规数据类型与操作指令支持
- string——get/mget/set/mset
- list——lpush/lpop/rpush/rpop/lrange
- set——sadd/sismember/srem
- hashmap——hset/hget/hdel
- sortedset——zadd/zremzrangebyscore
- 数据持久化机制
- appendonlyfile落盘与重写
基于go实现redis之主干框架
基于go实现redis之指令分发
基于go实现redis之存储引擎
基于go实现redis之数据持久化