6.5 KiB
6.5 KiB
硬件性能对比平台
一个专业的硬件性能数据对比平台,提供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部署(推荐)
- 克隆项目
git clone https://github.com/your-username/hardware-performance-platform.git
cd hardware-performance-platform
- 启动所有服务
docker-compose up -d
- 访问应用
- 前端应用:http://localhost:3000
- 后端API:http://localhost:7001
- Hangfire Dashboard:http://localhost:7001/hangfire
本地开发环境设置
后端设置
- 进入后端目录
cd backend
- 还原NuGet包
dotnet restore
- 配置数据库连接
cp appsettings.json appsettings.Development.json
# 编辑appsettings.Development.json,配置数据库连接字符串
- 运行数据库迁移
dotnet ef database update
- 启动后端服务
dotnet run
前端设置
- 进入前端目录
cd frontend
- 安装依赖
npm install
- 配置环境变量
cp .env.example .env.local
# 编辑.env.local,配置API地址等环境变量
- 启动前端服务
npm run dev
数据来源
平台从以下权威数据源采集硬件性能数据:
- GeekBench:CPU和GPU性能基准测试
- 3DMark:图形性能测试
- AnTuTu:移动设备综合性能测试
- GFXBench:图形性能测试
数据采集任务每天自动运行,确保数据的时效性和准确性。
API文档
后端API使用Swagger/OpenAPI生成文档,启动后端服务后可访问:
- Swagger UI:http://localhost:7001/swagger
- OpenAPI规范:http://localhost:7001/swagger/v1/swagger.json
测试
运行后端测试
cd backend
dotnet test
运行前端测试
cd frontend
# 运行所有测试
npm test
# 运行单元测试
npm run test:unit
# 运行E2E测试
npm run test:e2e
# 生成测试覆盖率报告
npm run test:unit:coverage
代码质量检查
cd frontend
# 运行ESLint检查
npm run lint
# 格式化代码
npm run format
# 生成代码质量报告
npm run quality-report
贡献指南
我们欢迎任何形式的贡献,包括但不限于:
- 🐛 报告Bug
- 💡 提出新功能建议
- 📝 改进文档
- 🔧 提交代码修复
请阅读 CONTRIBUTING.md 了解详细的贡献流程。
许可证
本项目采用 MIT 许可证。
联系我们
- 项目主页:https://github.com/your-username/hardware-performance-platform
- 问题反馈:https://github.com/your-username/hardware-performance-platform/issues
- 邮箱:contact@hardware-performance.com
致谢
感谢以下开源项目和数据提供商:
⭐ 如果这个项目对你有帮助,请给我们一个星标!