https://github.com/oli51467/simple-godis
基于Golang实现Redis服务器,支持RESP协议
https://github.com/oli51467/simple-godis
golang redis redis-server tcp-server
Last synced: 10 months ago
JSON representation
基于Golang实现Redis服务器,支持RESP协议
- Host: GitHub
- URL: https://github.com/oli51467/simple-godis
- Owner: Oli51467
- Created: 2023-07-21T09:11:56.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-11-22T07:16:00.000Z (over 2 years ago)
- Last Synced: 2025-04-12T09:45:00.663Z (about 1 year ago)
- Topics: golang, redis, redis-server, tcp-server
- Language: Go
- Homepage:
- Size: 84 KB
- Stars: 20
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
### 使用Go语言实现Redis
- 通信协议:```Redis Serialization Protocol```
- Go版本 ```1.17```
#### 技术栈
- Epoll
- TCP
- GC
- HashMap
- 协程
- 锁
- defer
#### 实现
- 使用TCP协议的应用层服务器
- Redis协议解析器
- 内存数据库
- Redis持久化
- Redis集群
#### 指令
- Keys
```keys```
```exists```
```del```
```type```
```rename```
```renamenx```
```flush```
- Strings
```get```
```set```
```getset```
```strlen```
```setnx```
```getdel```
```append```
```incr```
```decr```
- Common
```ping```
```exit```
- Set
```sAdd```
```sIsMember```
```sRem```
```sMembers```
```sCard```
```sInter```
```sUnion```
```sDiff```
```sPop```
- List
```lpush```
```lpushx```
```rpush```
```rpushx```
```lpop```
```rpop```
```lindex```
```lset```
```lrange```
```lrem```
```llen```
- Hash
```hset```
```hsetnx```
```hget```
```hdel```
```hexists```
```hmset```
```hmget```
```hmdel```
```hkeys```
```hvalues```
```hgetall```
```hlen```
```hstrlen```