基于golang 的im 聊天项目

郑重声明 本系统只能用作学习使用,不得用作生产环境。如因无视本声明,将本系统代码部署到生产环境,导致出现各种损失,本人不承担任何责任! 先上效果

安装方法

本系统升级到golang1.12,请开启如下支持

#开启go mod支持 export GO111MODULE=on #使用代理 export GOPROXY=https://goproxy.io 1.下载项目

git clone https://github.com/winlion/chat.git 2.项目配置,非常重要 2.1 数据库配置

修改service/init.go 中数据库配置文件

const ( driveName = "mysql" //数据库类型,不要动 dsName = "root:root@(127.0.0.1:3306)/tech-chat?charset=utf8" //tech-chat是数据库名称,请先创建 showSQL = true //是否显示sql语句 maxCon = 10 //最大连接数 NONERROR = "noerror" //一个字符串标记常量 )

为你自己的数据库以及密码,格式如下

用户名:密码@(ip:port)/数据库名称?charset=utf8 2.2 配置子网掩码,防火墙开放3000

修改ctrl/chat.go 179行左右

func udpsendproc() { log.Println("start udpsendproc") //todo 使用udp协议拨号 con, err := net.DialUDP("udp", nil, &net.UDPAddr{ IP: net.IPv4(192, 168, 0, 255), Port: 3000, }) //.... }

其中IP:net.IPv4(192, 168, 0, 255), 改为你当前应用所在服务器的子网掩码, 举个简单一点的例子,比如当前应用所安装环境是192.168.2.106,则需要修改参数为net.IPv4(192, 168, 2, 255) Port: 3000为通信端口。本系统依赖于UPD进行分布式部署。因此需要在防火墙内开放该端口。

2.3 分布式部署

本系统支持分布式部署,要求是将当前应用部署在同一个网段中。代码修改同2.3

2.4 页面入口地址

http://127.0.0.1:8080/user/login.shtml 3.依赖包安装

使用go mod 自动处理安装包

4. 操作说明

关注如下公众号找到im系统10万并发 认真阅读

版权声明:

1、该文章(资料)来源于互联网公开信息,我方只是对该内容做点评,所分享的下载地址为原作者公开地址。
2、网站不提供资料下载,如需下载请到原作者页面进行下载。