# 网络对战系统 **Repository Path**: Xiao____liu/OnlineBattleSystem ## Basic Information - **Project Name**: 网络对战系统 - **Description**: 此项目是一款基于 C/S 架构的在线问答对战系统,支持用户注册登录、个人训练以及实时排位对战等功能。 - **Primary Language**: C++ - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-13 - **Last Updated**: 2025-11-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## **项目概述** 此项目是一款基于 C/S 架构的在线问答对战系统,支持用户注册登录、个人训练以及实时排位对战等功能。系统采用 Qt 构建客户端界面,后端基于 libevent 实现高性能网络通信,结合 MySQL 数据库存储用户数据,通过 Json 进行数据交互,使用 spdlog 进行全面的日志管理。 ## **开发环境与工具** - **操作系统**:Linux - **前端框架**:Qt 5(用于构建客户端界面) - **后端框架**:libevent(高性能事件驱动网络库) - **日志系统**:spdlog(快速、异步的 C++ 日志库) - **数据交互**:Jsoncpp(Json 数据解析与生成) - **数据库**:MySQL(用户信息与对战数据存储) - **开发语言**:C++(前后端统一开发语言) - **构建工具**:Make(服务端)、Qt Creator(客户端) ## **系统架构设计** ### **整体架构** 系统采用经典的客户端 - 服务器架构,主要包含以下组件: 1. **Qt 客户端**:负责用户交互界面展示与本地逻辑处理 2. **libevent 服务端**:处理网络事件、业务逻辑与数据库交互 3. **MySQL 数据库**:持久化存储用户信息、题目数据与对战记录 4. **日志系统**:记录系统运行状态与用户操作行为 ## **系统亮点** 1. **高性能网络处理**:基于 libevent 的事件驱动模型,支持高并发连接 2. **实时对战体验**:优化的匹配算法与数据同步机制,确保对战流畅性 3. **完善的日志系统**:详细记录系统运行状态,便于问题排查与系统优化 4. **模块化设计**:前后端均采用模块化架构,便于功能扩展与维护 5. **跨平台兼容**:服务端基于 Linux 开发,客户端可通过 Qt 实现跨平台运行