https://github.com/hildam/gokv
使用golang实现的简易redis
https://github.com/hildam/gokv
Last synced: 3 months ago
JSON representation
使用golang实现的简易redis
- Host: GitHub
- URL: https://github.com/hildam/gokv
- Owner: HildaM
- Created: 2022-11-07T12:55:01.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2023-02-10T02:45:40.000Z (over 2 years ago)
- Last Synced: 2025-01-13T18:40:20.111Z (5 months ago)
- Language: Go
- Size: 164 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# GoKV
## 简介
- 使用 Golang 开发的仿 Redis 非关系型高并发数据库。
- 完全使用原生 golang 编写,不引入任何外部框架实现。## 项目亮点
1. 基于分段锁实现的 KV 存储引擎,确保数据高并发读写下的安全。参考 Java ConcurrentHashMap实现。
2. 支持多种数据结构,支持 string、set、zset 等 redis 数据结构
3. 支持 Redis 的 AOF 持久化与重写功能。
4. 支持 pipeline 模式的客户端。采用 channel 异步编程等 golang 并发编程实现。
5. 实现类似 redis 的网络连接池。提升 GoKV 网络连接性能。
6. 支持集群模式。采用一致性 hash 算法实现集群系欸但的定位、获取。
7. 支持事务处理。集群模式下采用 TCC 分布式事务。同时支持本地原子性事务处理,弥补了 Redis
没有本地事务的缺点