来源:微信公众号「编程学习基地」

文章目录

  • server
  • client
  • client-qt

server

测试服务器,ubuntu18.04

$ cat /proc/version
Linux version 4.4.0-87-generic (buildd@lcy01-31) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4) ) #110-Ubuntu SMP Tue Jul 18 12:55:35 UTC 2017

编译运行

make
./server

默认绑定本地ip,默认端口为8000,可通过选项设置默认端口,例如

./server -p 8888

client

编译运行

make
./client

默认绑定ip为0.0.0.0,默认端口为8000,可通过选项设置默认端口,例如

./client -s 0.0.0.0 -p 8000

注:client只支持群聊不支持私聊,私聊请看client-qt,可以被动回复添加好友信息.

client-qt

操作系统:win10;qt版本: 5.9.9;

qmake编译,直接双击 .pro 文件,即可编译,无需任何配置

注意在 common.h 处修改宏 SERVER_ADDR 为你启动服务器的地址

界面相对简陋,主要界面如下

  • 登录界面

  • 注册界面

  • 聊天界面

  • 添加好友界面

支持的功能

  • 注册账号
  • 登录账号
  • 添加好友
  • 群聊

  • 私聊

后续UI美化以及功能增加持续更新,关注微信公众号「编程学习基地」最快咨询…

github::https://github.com/ADeRoy/chat_room

欢迎慷慨 star

IM即时通讯设计 高并发聊天服务:服务器 + qt客户端(附源码)相关推荐

  1. Java Semaphore实现高并发场景下的流量控制(附源码) | 实用代码架构

    目录 前言 Semaphore介绍 代码演示 总结 前言 在java开发的工作中是否会出现这样的场景,你需要实现一些异步运行的任务,该任务可能存在消耗大量内存的情况,所以需要对任务进行并发控制.如何优 ...

  2. Netty实战 IM即时通讯系统(八)服务端和客户端通信协议编解码

    Netty实战 IM即时通讯系统(八)服务端和客户端通信协议编解码 零. 目录 IM系统简介 Netty 简介 Netty 环境配置 服务端启动流程 客户端启动流程 实战: 客户端和服务端双向通信 数 ...

  3. 高仿红孩子网上商城服务端和客户端应用源码

    非常难得的一款高仿红孩子网上商城服务端和客户端应用源码. 源码下载: 客户端源码:http://code.662p.com/view/2177.html 服务端源码:http://code.662p. ...

  4. cesium 经纬度绘制点_cesium结合geoserver利用WFS服务实现图层新增(附源码下载)

    前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 内 ...

  5. java计算机毕业设计ssm兴发农家乐服务管理系统n159q(附源码、数据库)

    java计算机毕业设计ssm兴发农家乐服务管理系统n159q(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行 ...

  6. 即时通讯项目 java版本qq (含服务器和客户端)源码_即时通讯安卓-QQ互联网和即时通讯云,如何实现即时通讯,这是Android还是Java...

    Android是系统平台. 应用程序所做的是应用程序的开发和完成 也就是说,通信是网络通信,但在手机环境中,网络的情况更复杂,所以我们必须做好结构 安卓即时通讯. 怎么做?安卓版TT即时通讯排行. A ...

  7. 基于SSM家电补贴一站式服务平台-计算机毕设 附源码12305

    ssm家电补贴一站式服务平台 摘 要 近年来,随着移动互联网的快速发展,电子商务越来越受到网民们的欢迎,电子商务对国家经济的发展也起着越来越重要的作用.简单的流程.便捷可靠的支付方式.快捷畅通的物流快 ...

  8. JAVA利用websocket实现多人聊天室、私信(附源码)

    声明:此文为原创,转载请声明出处! 小编曾在毕业设计中用到了聊天室这个功能,现在稍作整理分享一下,希望能对大家有所帮助,有不足之处请指出 在学习websocket前,首先得知道它的一些基本操作,可参考 ...

  9. 计算机毕业设计SSMSUNHome家政服务管理平台【附源码数据库】

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

最新文章

  1. 为Qt扩展QextSerialPort类
  2. httpclient 的简单示例
  3. CSS HACK:IE6、IE7、IE8、Firefox兼容性问题解决方案
  4. 除了数据,生活中还有这些......
  5. python sklearn_KFold 什么是K折?
  6. python 对excel文件进行分词并进行词频统计_教你背单词 | 利用python分析考研英语阅读并生成词频降序表...
  7. linux查域名对应的ip 系统调用,DDNS 的工作原理及其在 Linux 上的实现
  8. Burnside引理和Polya定理学习笔记
  9. UE4学习-在虚幻编辑器中打开VS的三种方式
  10. 关于C语言static定义函数类型的具体解释
  11. 客户端自动化测试研究
  12. 【CCNA Exploration 4.0 路由协议和概念3】
  13. 机器学习(二)——贝叶斯算法
  14. Linux x86-64 IOMMU详解(三)——Intel IOMMU(硬件IOMMU)的功能与基本原理
  15. 把hive sql的关键字小写转大写的小程序
  16. matlab 固态 机械_固态硬盘无法识别或数据删除还能恢复数据吗?
  17. 基于微信小程序的每日签到打卡系统ssm框架
  18. DDoS攻击类型和缓解手段
  19. 产品经理培训还好找工作吗?
  20. linux备份文件命令

热门文章

  1. Week11——D 寿司
  2. touch 连续创建文件_touch命令 – 创建文件
  3. vue touch事件使用
  4. 学习笔记:内容安全过滤技术
  5. windows系统bat/cmd脚本程序
  6. php微商城微信支付教程,ECSHOP微信商城后台操作使用教程【ECSHOP微信支付设置】ECSHOP微信插件安装方法-ECSHOP教程网...
  7. 针对RT_Thread中rt_pin_mode()函数的分析
  8. 苹果关闭自动更新_苹果手机一定要关闭的5大功能!省电不止一倍!一天一充就够了...
  9. 如何用Java写一个聊天机器人
  10. 编程:在屏幕中间分别显示绿色、绿底红色、白底蓝色的字符串'welcome to masm!'