基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】

  • 视频介绍https://www.bilibili.com/video/av74080010
  • 项目源代码https://github.com/Realself-Ma/TcpChatRoom
  • 登录界面
    基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第1张图片
  • 客户端
    win10下的客户端
    基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第2张图片
    Ubuntu下客户端

基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第3张图片
聊天室
基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第4张图片
接收到好友请求
基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第5张图片
是否同意?拒绝后,发送请求的一方会受到拒绝信息。
基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第6张图片
更换头像,实时更新,将头像信息回传到服务器。
基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第7张图片

实时更新好友头像,和状态信息
基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第8张图片

  • 服务器端
    服务器后台记录在这里插入图片描述
    基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第9张图片
    服务器数据库
    基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第10张图片

  • 2019/12/19日更新-基于muduo网络库重构服务端代码
    基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第11张图片

    1.并发连接数增加,业务逻辑与服务逻辑区分开,客户端的默认端口是2019

    2.加入了压力测试代码-ChatRoom_loadtest.cc,可以进行压力测试
    基于云服务器的TCP网络聊天室【客户端Qt5.6开发、后台服务器多进程实现、Mysql数据库管理用户信息】_第12张图片
    3.加入了自动重启服务端程序的Shell脚本-restart.sh,可实现自动重启程序,配 合·screen 命令,可以实现服务器的常态运行

参考了muduo网络库 https://github.com/chenshuo/muduo

你可能感兴趣的:(小项目,TCP,聊天室,网络通信,Linux网络编程)