Files
it/README.md

262 lines
6.5 KiB
Markdown
Raw Permalink Normal View History

2025-11-03 19:47:36 +08:00
# 硬件性能对比平台
一个专业的硬件性能数据对比平台提供CPU、GPU等硬件的性能排名、详细参数对比和性能趋势分析。
## 项目概述
本平台旨在为用户提供全面、准确的硬件性能数据,帮助用户在选择硬件时做出明智决策。平台集成了多个权威数据源,提供实时更新的性能数据和排名信息。
### 主要功能
- 🏆 **硬件性能排名**:提供各类硬件的性能排名和评分
- 📊 **详细参数对比**支持2-4个产品的详细参数对比
- 🔍 **智能搜索筛选**:按品牌、性能分数、发布年份等条件筛选
- 📈 **性能趋势分析**:展示硬件性能的历史变化趋势
- 📱 **响应式设计**:完美适配桌面端和移动端
- 🔒 **数据安全保障**:采用多种安全措施保护用户数据
## 技术架构
### 后端技术栈
- **.NET 9.0**:最新的.NET平台提供高性能和丰富的功能
- **Entity Framework Core**ORM框架用于数据库操作
- **MySQL**:关系型数据库,存储产品数据和性能指标
- **Hangfire**:后台任务调度框架,用于定时数据采集
- **AutoMapper**对象映射框架简化DTO转换
- **Serilog**:结构化日志框架
- **FluentValidation**:输入验证框架
### 前端技术栈
- **Vue 3**渐进式JavaScript框架
- **Vite**:现代化的前端构建工具
- **Vue Router**Vue.js官方路由管理器
- **Pinia**Vue状态管理库
- **Element Plus**基于Vue 3的桌面端UI组件库
- **Vant**移动端UI组件库
- **ECharts**:数据可视化图表库
- **Axios**HTTP客户端用于API请求
- **TailwindCSS**实用优先的CSS框架
### 测试与质量保证
- **Vitest**基于Vite的单元测试框架
- **Playwright**:端到端测试框架
- **ESLint**:代码质量检查工具
- **Prettier**:代码格式化工具
- **TypeScript**JavaScript的超集提供静态类型检查
- **Husky**Git hooks管理工具
### 部署与运维
- **Docker**:容器化部署
- **GitHub Actions**:持续集成和持续部署
- **Nginx**:反向代理和静态文件服务
- **Redis**:缓存和会话存储
## 项目结构
```
hardware-performance-platform/
├── backend/ # 后端项目
│ ├── src/
│ │ ├── API/ # API控制器
│ │ ├── Application/ # 应用服务层
│ │ ├── Core/ # 核心业务逻辑
│ │ └── Infrastructure/ # 基础设施层
│ ├── tests/ # 后端测试
│ └── ... # 其他后端文件
├── frontend/ # 前端项目
│ ├── src/
│ │ ├── components/ # Vue组件
│ │ ├── views/ # 页面视图
│ │ ├── stores/ # Pinia状态管理
│ │ ├── services/ # API服务
│ │ ├── utils/ # 工具函数
│ │ └── assets/ # 静态资源
│ ├── tests/ # 前端测试
│ ├── docs/ # 前端文档
│ └── ... # 其他前端文件
├── docs/ # 项目文档
├── docker-compose.yml # Docker编排文件
└── README.md # 项目说明文档
```
## 快速开始
### 环境要求
- Node.js 18.x 或更高版本
- .NET 9.0 SDK
- MySQL 8.0 或更高版本
- Redis 6.0 或更高版本(可选,用于缓存)
- Docker 和 Docker Compose推荐
### 使用Docker Compose部署推荐
1. 克隆项目
```bash
git clone https://github.com/your-username/hardware-performance-platform.git
cd hardware-performance-platform
```
2. 启动所有服务
```bash
docker-compose up -d
```
3. 访问应用
- 前端应用http://localhost:3000
- 后端APIhttp://localhost:7001
- Hangfire Dashboardhttp://localhost:7001/hangfire
### 本地开发环境设置
#### 后端设置
1. 进入后端目录
```bash
cd backend
```
2. 还原NuGet包
```bash
dotnet restore
```
3. 配置数据库连接
```bash
cp appsettings.json appsettings.Development.json
# 编辑appsettings.Development.json配置数据库连接字符串
```
4. 运行数据库迁移
```bash
dotnet ef database update
```
5. 启动后端服务
```bash
dotnet run
```
#### 前端设置
1. 进入前端目录
```bash
cd frontend
```
2. 安装依赖
```bash
npm install
```
3. 配置环境变量
```bash
cp .env.example .env.local
# 编辑.env.local配置API地址等环境变量
```
4. 启动前端服务
```bash
npm run dev
```
## 数据来源
平台从以下权威数据源采集硬件性能数据:
- **GeekBench**CPU和GPU性能基准测试
- **3DMark**:图形性能测试
- **AnTuTu**:移动设备综合性能测试
- **GFXBench**:图形性能测试
数据采集任务每天自动运行,确保数据的时效性和准确性。
## API文档
后端API使用Swagger/OpenAPI生成文档启动后端服务后可访问
- Swagger UIhttp://localhost:7001/swagger
- OpenAPI规范http://localhost:7001/swagger/v1/swagger.json
## 测试
### 运行后端测试
```bash
cd backend
dotnet test
```
### 运行前端测试
```bash
cd frontend
# 运行所有测试
npm test
# 运行单元测试
npm run test:unit
# 运行E2E测试
npm run test:e2e
# 生成测试覆盖率报告
npm run test:unit:coverage
```
### 代码质量检查
```bash
cd frontend
# 运行ESLint检查
npm run lint
# 格式化代码
npm run format
# 生成代码质量报告
npm run quality-report
```
## 贡献指南
我们欢迎任何形式的贡献,包括但不限于:
- 🐛 报告Bug
- 💡 提出新功能建议
- 📝 改进文档
- 🔧 提交代码修复
请阅读 [CONTRIBUTING.md](CONTRIBUTING.md) 了解详细的贡献流程。
## 许可证
本项目采用 [MIT 许可证](LICENSE)。
## 联系我们
- 项目主页https://github.com/your-username/hardware-performance-platform
- 问题反馈https://github.com/your-username/hardware-performance-platform/issues
- 邮箱contact@hardware-performance.com
## 致谢
感谢以下开源项目和数据提供商:
- [Vue.js](https://vuejs.org/)
- [.NET](https://dotnet.microsoft.com/)
- [Element Plus](https://element-plus.org/)
- [ECharts](https://echarts.apache.org/)
- [GeekBench](https://www.geekbench.com/)
- [3DMark](https://www.3dmark.com/)
- [AnTuTu](https://www.antutu.com/)
---
⭐ 如果这个项目对你有帮助,请给我们一个星标!