mirror of
https://gitee.com/myxzgzs/RSJselet
synced 2025-08-08 08:12:41 +08:00
103 lines
2.5 KiB
Markdown
103 lines
2.5 KiB
Markdown
![]() |
# 成绩查询系统 (RSJselet)
|
|||
|
|
|||
|
这是一个高性能的学生成绩查询系统,支持12,000人同时在线查询。
|
|||
|
|
|||
|
## 主要特性
|
|||
|
|
|||
|
- 支持高并发查询(12,000人同时在线)
|
|||
|
- 使用Redis缓存减轻数据库压力
|
|||
|
- 提供等待室机制避免系统过载
|
|||
|
- 自动释放数据库连接,避免资源泄漏
|
|||
|
- 手机号验证和内网可访问
|
|||
|
|
|||
|
## 系统架构
|
|||
|
|
|||
|
- 后端: FastAPI + Uvicorn
|
|||
|
- 数据库: MySQL
|
|||
|
- 缓存: Redis
|
|||
|
- 前端: HTML + CSS
|
|||
|
|
|||
|
## 快速开始
|
|||
|
|
|||
|
系统提供了测试数据和快速启动脚本,方便本地开发和测试:
|
|||
|
|
|||
|
### Windows系统
|
|||
|
|
|||
|
```bash
|
|||
|
# 修改run_with_test_data.bat中的数据库连接信息
|
|||
|
# 然后运行批处理文件
|
|||
|
run_with_test_data.bat
|
|||
|
```
|
|||
|
|
|||
|
### Linux/Mac系统
|
|||
|
|
|||
|
```bash
|
|||
|
# 修改run_with_test_data.sh中的数据库连接信息
|
|||
|
chmod +x run_with_test_data.sh
|
|||
|
./run_with_test_data.sh
|
|||
|
```
|
|||
|
|
|||
|
启动后访问 http://localhost:8000 即可使用系统。
|
|||
|
|
|||
|
### 测试数据
|
|||
|
|
|||
|
系统提供了约1000条测试数据,包括:
|
|||
|
|
|||
|
- 江苏省教育局的语文、数学、英语教师岗位
|
|||
|
- 淮安市政府的行政助理、文案策划岗位
|
|||
|
- 淮安市医院的内科医生、外科医生、护士岗位
|
|||
|
- 江苏省人社厅的人事专员、劳动监察员、社保专员岗位
|
|||
|
|
|||
|
测试账号示例:
|
|||
|
- 准考证号: 101081100101,手机号: 13800000001
|
|||
|
- 准考证号: 101081100201,手机号: 13800000006
|
|||
|
- 准考证号: 101081100301,手机号: 13800000010
|
|||
|
|
|||
|
## 部署方式
|
|||
|
|
|||
|
系统提供多种部署方式:
|
|||
|
|
|||
|
### Docker部署(推荐)
|
|||
|
|
|||
|
使用Docker Compose一键部署所有服务:
|
|||
|
|
|||
|
```bash
|
|||
|
# 构建并启动
|
|||
|
docker-compose up -d
|
|||
|
```
|
|||
|
|
|||
|
### Linux可执行文件部署
|
|||
|
|
|||
|
将系统打包为单个可执行文件,方便在Linux服务器上部署:
|
|||
|
|
|||
|
```bash
|
|||
|
# 构建可执行文件
|
|||
|
chmod +x build_executable.sh
|
|||
|
./build_executable.sh
|
|||
|
|
|||
|
# 部署到服务器
|
|||
|
scp -r dist/* user@server:/path/to/deploy/
|
|||
|
|
|||
|
# 在服务器上启动
|
|||
|
cd /path/to/deploy/
|
|||
|
./start.sh
|
|||
|
```
|
|||
|
|
|||
|
### 更多详情
|
|||
|
|
|||
|
请查看 [部署指南](DEPLOY.md) 获取更多详细信息。
|
|||
|
|
|||
|
## 高并发支持
|
|||
|
|
|||
|
系统已经过优化,可以支持12,000人同时查询:
|
|||
|
|
|||
|
1. **连接池优化**: 高效管理数据库和Redis连接
|
|||
|
2. **等待室机制**: 控制并发查询数量,防止系统崩溃
|
|||
|
3. **多进程支持**: 利用多核CPU提高处理能力
|
|||
|
4. **缓存策略**: 自适应缓存热门数据
|
|||
|
|
|||
|
## 配置和扩展
|
|||
|
|
|||
|
所有系统参数都可以通过环境变量配置,请参考 [部署指南](DEPLOY.md) 获取完整配置选项。
|
|||
|
|
|||
|
如需支持更大规模并发,可参考扩展策略进行水平或垂直扩展。
|