粘包问题是由TCP的“流”协议,没有消息边界所引起的。
解决粘包的方法就是由应用层进行分包处理,本质上就是由应用层来维护消息和消息的边界。而同步IO或者异步IO和处理粘包没有任何关系,不同的IO模型只是操作系统根据不同的就绪时机来通知应用程序如何消费数据,和真正的数据处理没有关系。如何处理粘包,主要是采用两种方式:
1,以特殊字符作为消息的分界符。
2,在消息头部加入整个消息的长度信息。
粘包问题是由TCP的“流”协议,没有消息边界所引起的。
解决粘包的方法就是由应用层进行分包处理,本质上就是由应用层来维护消息和消息的边界。而同步IO或者异步IO和处理粘包没有任何关系,不同的IO模型只是操作系统根据不同的就绪时机来通知应用程序如何消费数据,和真正的数据处理没有关系。如何处理粘包,主要是采用两种方式:
1,以特殊字符作为消息的分界符。
2,在消息头部加入整个消息的长度信息。