cmd | ||
internal | ||
scripts | ||
.gitignore | ||
config.yaml | ||
go.mod | ||
go.sum | ||
Makefile | ||
README.md | ||
SUMMARY.md | ||
TESTPLAN.md |
Open-CAS 断电 PLP SSD 数据完整性测试
本项目提供了一套用于测试Open-CAS在断电情况下的PLP SSD数据完整性的测试框架。测试涵盖了多种数据写入场景,并通过模拟断电来验证数据的持久性和一致性。
环境要求
- Go 1.20+
- NVMe SSD (支持PLP - Power Loss Protection)
- HDD 硬盘
- 已安装配置的Open-CAS
目录结构
.
├── cmd/
│ ├── client/ # 客户端命令行工具
│ └── server/ # 服务器命令行工具
├── internal/
│ ├── config/ # 配置处理
│ ├── model/ # 数据模型
│ ├── testcase/ # 测试用例实现
│ └── utils/ # 工具函数
├── pkg/ # 可被外部导入的包
│ └── opencastools/ # Open-CAS操作工具
├── scripts/ # 测试脚本
├── go.mod # Go模块文件
└── README.md # 本文档
使用方法
- 配置测试环境
在运行测试前,请确保您的Open-CAS已正确配置,并将需要测试的NVMe和HDD设备路径在配置文件中指定。
- 启动服务器
go run cmd/server/main.go -config config.yaml
- 运行客户端测试
go run cmd/client/main.go -server localhost:8080 -test all
测试场景
本测试框架包含以下测试场景:
- 顺序写入测试
- 随机写入测试
- 混合读写测试
- 高并发写入测试
- 断电恢复测试
- 长期稳定性测试
详细测试指标和结果分析请参阅测试报告。