Golang Socket Server自定义协议的简单实现方案
在Server和Client通讯中,由于网络等原因很可能会发生数据丢包的现象。如果数据缺失,服务端接收的信息不完整,就会造成混乱。我们需要在Server和Client之间建立一个通讯协议,通过协议中的规则,判断当前接收到的信息是否完整。根据信息的完整情况,采取不同的处理方式。通讯协议protocol的核心就是设计一个头部。如果传来的信息不包含这个头部,就说明当前信息和之前的信息是同一条。而协议主要包含的功能是封装和解析。其中有个Const部分,用于定义头部、头部长度、客户端传入信息长度。在代码中,我们这样定义:头部的内容为"Headers",长度为7。一个int的长度等于4个byte的长度。在放入通道之前,使用protocol和Depack对信息进行解析。
下载地址
用户评论