04 2020 档案

摘要:#物联网海量设备心跳注册,脱网清除——多线程高并发互斥锁落地 #1.应用背景 在物联网应用场景中,需要维护很多个设备的连接,比如基于TCP socket通信的长连接,目的是为了获取设备采集的信息,反向控制设备的数字开关或者模拟量。我们把这些TCP长连接都放入了基于线程安全的ConcurrentDic 阅读全文
posted @ 2020-04-15 22:29 JerryMouseLi 阅读(2673) 评论(6) 推荐(3) 编辑
摘要:#1.粘包现象 每个TCP 长连接都有自己的socket缓存buffer,默认大小是8K,可支持手动设置。粘包是TCP长连接中最常见的现象,如下图 socket缓存中有5帧(或者说5包)心跳数据,包头即F0 AA 55 0F(十六进制),通过数包头数据我们确认出来缓存里有5帧心跳包,但是5帧数据彼此 阅读全文
posted @ 2020-04-08 14:48 JerryMouseLi 阅读(2184) 评论(2) 推荐(11) 编辑
摘要:[toc] 1.背景 接上篇文章 "深入浅出C 结构体——封装以太网心跳包的结构为例" ,使用结构体性能不佳,而且也说明了原因。本篇文章详细描述了以类来封装网络心跳包的优缺点,结果大大提升了解析性能。 2.用类来封装以太网心跳包的优缺点 2.1.优点 + 可以在类里直接new byte[],即直接实 阅读全文
posted @ 2020-04-01 08:56 JerryMouseLi 阅读(2155) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示