# CommunicationSystem **Repository Path**: chicken-c/communication-system ## Basic Information - **Project Name**: CommunicationSystem - **Description**: 这是一个远程通信系统,项目基于 C/S 架构,实现了用户注册、登录、添加好友、创建群、聊天、群发、文件传输以及上下线提醒功能。服务端部署在阿里云服务器上,使用 libevent + 线程池来解决并发的问题,可以同时处理多个客户端的数据信息。客户端基于Windows Qt,整个交互过程采用json格式,其中,发送文件采用了多线程,避免了UI界面阻塞 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 1 - **Created**: 2024-06-11 - **Last Updated**: 2025-07-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CommunicationSystem ### 介绍 开发环境:阿里云、Ubuntu、Qt Creator、Vim、gcc、Visual Studio Code 关键字: C/S架构、TCP/IP协议、mysql、libevent、多线程 ###### 项目表述/ 功能: 1. 聊天软件支持用户注册、添加好友、创建或添加群、上线提醒等功能,同时也支持用户间文件的传输; 2. 界面采用Qt,实现多窗口控制多进程任务,用户可以同时与多人聊天、传输文件; 3. 用户的主要数据存放在mysql数据库中,当用户上线时,系统从数据库中读取必要 信息存放在哈希表中,方便读取和使用,提高工作效率; 4. 程序采用libevent事件库用来处理用户之间通信传输等多任务高并发的问题,并 通过多线程来提升聊天软件处理事件的速度,提高用户的使用舒适度