这篇就是完全原版了,作为一个开始,先介绍comet入口文件main.go

goim源码分析与二次开发-comet分析二-LMLPHP

第一步是初始化配置,还有白名单。还有性能监口,整体来说入口代码简洁可读性很强

goim源码分析与二次开发-comet分析二-LMLPHP

然后开始初始化监控,还有bukcet这里bucket 还有round都是配置设置里面的参数,在第一章的时候分析了bucket,round打算放在tcp链接时候分析。

goim源码分析与二次开发-comet分析二-LMLPHP

operator是一个很关键的地方,这个operator主要是做rpc的一个通信跟状态码的一些更改,goim其实踢出了很多代码,比方websocket读取消息也没有完成,只是添加了注释。

goim源码分析与二次开发-comet分析二-LMLPHP

goim源码分析与二次开发-comet分析二-LMLPHP

剩下的代码非常简单,第一个是初始化tcp通信,第二个是websocket通信,第三个是flash通信,第四个基于tls的websocket通信,第五个是rpc通信,第五个主要还是内部协议通过rpc进行通信。

入口文件整体很简单,下一节我将精力集中到websocket通信。

05-11 15:21