cst同步使用”golang.org/x/net/websocket”和gorilla区别 [TOC] 心跳处理方面 gorilla 从源码可以看出每当遇到ping、pong的数据帧的时候,都会有一个处理函数,gorilla提供了以下的接口去设置这一个处理函数,这样就可以在后端来发ping,然后查看客户端是否有回复pong //-----pong func (c *Conn) SetPongHandler(h func(appData string) error) { if h […]
cst项目坦克大战websocket同步相关知识 [TOC] 说明 websocket使用的库是"github.com/gorilla/websocket" 缓冲区 写超时发生在缓冲区堵塞的时候,假如一直写不进缓冲区,就会报错写超时,这个缓冲区一般是操作系统的缓冲区 网络层的缓冲区一般非常大 在测试中三个玩家每100毫秒发送,过了大概30秒才开始有写超时 但是只有这三名玩家发 不过我是在本地中创建docker来测试,实际可能会有所不同 每个连接独立一个缓冲区 //只是应用层的缓冲区大小,不是系统的,系统的可能更大 var upgrade = websocket.Upgrader{ […]
压力测试 使用golang的pprof查看内存泄漏 导入包 "net/http" _ "net/http/pprof" 开一个端口 go func() { log.Println(http.ListenAndServe(":6060", nil))}() 访问地址 说明 […]