IM即时通讯设计 高并发聊天服务:服务器 + qt客户端(附源码)
来源:微信公众号「编程学习基地」
文章目录
- 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客户端(附源码)相关推荐
- Java Semaphore实现高并发场景下的流量控制(附源码) | 实用代码架构
目录 前言 Semaphore介绍 代码演示 总结 前言 在java开发的工作中是否会出现这样的场景,你需要实现一些异步运行的任务,该任务可能存在消耗大量内存的情况,所以需要对任务进行并发控制.如何优 ...
- Netty实战 IM即时通讯系统(八)服务端和客户端通信协议编解码
Netty实战 IM即时通讯系统(八)服务端和客户端通信协议编解码 零. 目录 IM系统简介 Netty 简介 Netty 环境配置 服务端启动流程 客户端启动流程 实战: 客户端和服务端双向通信 数 ...
- 高仿红孩子网上商城服务端和客户端应用源码
非常难得的一款高仿红孩子网上商城服务端和客户端应用源码. 源码下载: 客户端源码:http://code.662p.com/view/2177.html 服务端源码:http://code.662p. ...
- cesium 经纬度绘制点_cesium结合geoserver利用WFS服务实现图层新增(附源码下载)
前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 内 ...
- java计算机毕业设计ssm兴发农家乐服务管理系统n159q(附源码、数据库)
java计算机毕业设计ssm兴发农家乐服务管理系统n159q(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行 ...
- 即时通讯项目 java版本qq (含服务器和客户端)源码_即时通讯安卓-QQ互联网和即时通讯云,如何实现即时通讯,这是Android还是Java...
Android是系统平台. 应用程序所做的是应用程序的开发和完成 也就是说,通信是网络通信,但在手机环境中,网络的情况更复杂,所以我们必须做好结构 安卓即时通讯. 怎么做?安卓版TT即时通讯排行. A ...
- 基于SSM家电补贴一站式服务平台-计算机毕设 附源码12305
ssm家电补贴一站式服务平台 摘 要 近年来,随着移动互联网的快速发展,电子商务越来越受到网民们的欢迎,电子商务对国家经济的发展也起着越来越重要的作用.简单的流程.便捷可靠的支付方式.快捷畅通的物流快 ...
- JAVA利用websocket实现多人聊天室、私信(附源码)
声明:此文为原创,转载请声明出处! 小编曾在毕业设计中用到了聊天室这个功能,现在稍作整理分享一下,希望能对大家有所帮助,有不足之处请指出 在学习websocket前,首先得知道它的一些基本操作,可参考 ...
- 计算机毕业设计SSMSUNHome家政服务管理平台【附源码数据库】
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
最新文章
- 为Qt扩展QextSerialPort类
- httpclient 的简单示例
- CSS HACK:IE6、IE7、IE8、Firefox兼容性问题解决方案
- 除了数据,生活中还有这些......
- python sklearn_KFold 什么是K折?
- python 对excel文件进行分词并进行词频统计_教你背单词 | 利用python分析考研英语阅读并生成词频降序表...
- linux查域名对应的ip 系统调用,DDNS 的工作原理及其在 Linux 上的实现
- Burnside引理和Polya定理学习笔记
- UE4学习-在虚幻编辑器中打开VS的三种方式
- 关于C语言static定义函数类型的具体解释
- 客户端自动化测试研究
- 【CCNA Exploration 4.0 路由协议和概念3】
- 机器学习(二)——贝叶斯算法
- Linux x86-64 IOMMU详解(三)——Intel IOMMU(硬件IOMMU)的功能与基本原理
- 把hive sql的关键字小写转大写的小程序
- matlab 固态 机械_固态硬盘无法识别或数据删除还能恢复数据吗?
- 基于微信小程序的每日签到打卡系统ssm框架
- DDoS攻击类型和缓解手段
- 产品经理培训还好找工作吗?
- linux备份文件命令
热门文章
- Week11——D 寿司
- touch 连续创建文件_touch命令 – 创建文件
- vue touch事件使用
- 学习笔记:内容安全过滤技术
- windows系统bat/cmd脚本程序
- php微商城微信支付教程,ECSHOP微信商城后台操作使用教程【ECSHOP微信支付设置】ECSHOP微信插件安装方法-ECSHOP教程网...
- 针对RT_Thread中rt_pin_mode()函数的分析
- 苹果关闭自动更新_苹果手机一定要关闭的5大功能!省电不止一倍!一天一充就够了...
- 如何用Java写一个聊天机器人
- 编程:在屏幕中间分别显示绿色、绿底红色、白底蓝色的字符串'welcome to masm!'