diff --git a/README.md b/README.md index c2d76e65f8c40a5cf6171f3e3e6c9cd250c53b7d..7eccc17b7c06e026209a23252f0189cda28c878c 100644 --- a/README.md +++ b/README.md @@ -1,39 +1,81 @@ -# 动态大ID切换测试. - -#### 介绍 -{**以下是 Gitee 平台说明,您可以替换此简介** -Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 -无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)} - -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) +# 动态大ID切换测试 + +## 介绍 +动态大ID切换测试项目是一个用于模拟和验证大规模ID切换场景的测试工具,主要用于分布式系统、数据库迁移或服务升级场景下的ID连续性验证。通过模拟生成超大数据量的ID序列并执行切换操作,帮助开发者验证系统在ID突变场景下的稳定性与容错能力。 + +## 软件架构 +项目采用模块化设计,包含以下核心组件: +- **ID生成引擎**(核心逻辑在`sss.ts`中实现):负责生成符合规则的动态ID序列 +- **压力测试模块**:模拟高并发场景下的ID切换 +- **验证器模块**:校验切换过程中的数据一致性 +- **配置中心**(位于`vvxcv/`目录):包含策略配置与参数定义 + +## 安装教程 +### 前置依赖 +- Node.js 16.x 或更高版本 +- Git 2.30+ + +### 安装步骤 +```bash +# 克隆仓库 +git clone https://22485.runjs.cn/git/dongtaidaidqiehuanceshi +cd dongtaidaidqiehuanceshi + +# 安装依赖 +npm install + +# 构建项目 +npm run build +``` + +### 环境配置 +修改`vvxcv/config.ts`中的参数: +```ts +export const config = { + idRange: [100000, 999999], // ID范围 + switchInterval: 5000, // 切换间隔(ms) + concurrency: 100 // 并发线程数 +} +``` + +## 使用说明 +### 启动测试 +```bash +npm start +``` + +### 测试命令示例 +```bash +# 指定自定义参数运行 +npm start -- --id-range=1000-5000 --concurrency=200 + +# 查看帮助文档 +npm start -- --help +``` + +### 输出示例 +``` +[INFO] 测试启动 @ 2023-09-20 14:30:00 +[CONFIG] ID范围: 100000-999999 | 并发数: 100 +[TEST] 第1轮切换完成 ✓ ID连续性验证通过 +[ERROR] 第2轮检测到5个断点(自动重试中...) +``` + +## 参与贡献 +1. Fork仓库并创建特性分支 +2. 编写符合TypeScript规范的代码 +3. 添加单元测试(覆盖率达85%+) +4. 提交PR并附上变更说明 +5. 通过CI/CD流水线验证 + +## 特技 +- ✅ 支持亿级ID空间模拟 +- 🚀 毫秒级切换响应速度 +- 📊 可视化监控仪表盘 +- 🧪 多种故障注入模式 +- 📦 支持Docker容器化部署 + +## 许可证 +本项目采用 MIT License,详情见 [LICENSE](LICENSE) 文件。 + +> 注意:实际部署前请根据业务场景调整压力参数,建议在测试环境中运行。 \ No newline at end of file