纯PB实现的IM即时通讯代码 单服务器支持3000人以上在线

cqqjjf cqqjjf 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区


http://www.ourfreesoft.cn/soft/pbim.rar

源代码需要使用PB 11.0以上版本打开
提供了完整的PB运行库文件,并编译出了EXE文件,没有PB 11也可以测试
系统的离线消息需要10分钟后 才会发送给对方

如果安装后,服务器和客户端通讯不成功,请检查:
1、是否被防火墙阻止
2、参数设置是否完全正确
3、网络连接是否顺畅

1、系统实现方式
本工具使用纯PB代码实现,基于UDP协议进行通讯,PB版本为11.2,数据库为SQL 2000/2005/2008 另外有PB 9 8 7版。本测试程序美工比较简单,仅供研究使用。

系统结构

中心数据库--中间数据库
| |
| |
服务器端 |
| |直接访问
UDP| |
| |
客户端--------|

文件传输结构:通过服务器端获取通讯端口后,直接通讯
服务器端
| |
| |
| UDP |
客户端-----客户端


能进行路由器穿透,实现如同QQ一般的在线沟通。由于设计为嵌入ERP系统使用,方便企业管理人员管理,所有消息均通过服务器中转并记录到数据库。您可以将其改制为客户端和客户端直接通讯,以获得单服务器更大的用户承载量。

经过测试,单服务器1000人在线带宽暂用在2M以下,Intel E2200CPU占用率50%以下,内存300M内,服务器CPU建议为多核CPU以获得更高的处理效率。

为了减轻服务通讯端口的通讯量压力,服务器端负责
(1)在线消息中转,如对方未成功接收,则进入数据库离线消息表
(2)登录请求
(3)检查连接状态
(4)密码修改请求
(5)好友在线状态

以下操作,由于只在登录的时候发生一次,并且数据量较大,客户端通过访问中间数据库访问完成,当然,你也可以改制为不需中间数据库中转,直接由服务器返回消息。
(1)获取好友列表
(2)获取离线消息
...全文
评论 38
收藏 已收藏
分享
返回顶部
cqqjjf
非技术版 401 成员 11,494 内容