基于golang的即时通讯系统

架构图

处理方案

  • handler go在server端监听client的消息
  • 通过channel读取消息后 并发送给user
  • 每个user使用goroutine挂起 保证一直监听channel消息
  • 收到消息后发送给对应client,client将消息发送给handler go 对消息进行处理

这是一个channel读写分离的通讯系统 且目前暂不支持文件传输

以后可能会再次基础上迭代

功能介绍

版本⼀:构建基础Server

版本⼆: ⽤户上线功能

版本三: ⽤户消息⼴播机制

版本四:⽤户业务层封装

版本五:在线⽤户查询

版本六:修改⽤户名

版本七:超时强踢功能

版本⼋:私聊功能

版本九:客户端实现

项目地址:点击这里!