Skip to content

项目概述

功能需求

  • 基本操作:SET、GET、DEL
  • 数据类型:String、List、Hash
  • 过期时间支持
  • 持久化存储
  • 简单命令协议

技术栈

  • Tokio:异步运行时
  • DashMap:并发 HashMap
  • Serde:序列化
  • Chrono:时间处理

项目结构

kv-store/
├── Cargo.toml
├── src/
│   ├── main.rs           # 入口
│   ├── lib.rs            # 库入口
│   ├── store/
│   │   ├── mod.rs
│   │   ├── engine.rs     # 存储引擎
│   │   ├── types.rs      # 数据类型
│   │   └── expire.rs     # 过期管理
│   ├── command/
│   │   ├── mod.rs
│   │   ├── parser.rs     # 命令解析
│   │   ├── executor.rs   # 命令执行
│   │   └── protocol.rs   # 协议定义
│   ├── persistence/
│   │   ├── mod.rs
│   │   ├── file.rs       # 文件持久化
│   │   └── snapshot.rs   # 快照
│   └── server.rs         # TCP 服务器
└── tests/
    └── store_test.rs