skynet watchdog和gate

skynet lua层的基础讲解的差不多了.就剩下网络这一块了.网络这块比前面的复杂,也是skynet框架的精华所在,所以放在后面慢慢讲解.今天看了服务器与客户端交互常见的watchdog和gate模块,相当于封装了socket api的调用,程序只需要写发送和接收的逻辑即可,很是方便.

下面是我花了一下午的时间,制作的UML时序图,可能不是很规范,但还算比较清晰.

skynet watchdog和gate

看到上面图,是不是感觉被各种对象搞花眼了.本来不算很难的socket编程搞的那么复杂.其实这样做是为了简化逻辑模型,抽象出几个服务模型.

watchdog是一个服务,用来启动gate服务进行socket监听,同时他也有socket打开(客户端连接了)和关闭的接口.

gate和gateserver是同一个服务,gate引用了gateserver文件.gateserver才是各种socket操作的核心,监听和接收数据都在这里进行.

关于skynet socket相关的讲解将放在下阶段进行,尽请期待.

关于watchdog和gate源码剖析的内容请看:

skynet watchdog,gate源码分析

 

欢迎加入QQ群 858791125 讨论sknet,游戏后台开发,lua脚本语言等问题。