网络编程socket慎重断开连接

网络编程socket慎重断开连接

业务场景

  • 我们公司是做智慧交通的,主要卖交通相关的硬件和软件
  • 硬件包括信号机、雷达、雷视、边缘盒子等,软件包括信控平台、管控平台等
  • 信号机通信协议有国标推荐协议,定义了一些接口和数据字段
  • 硬件和软件通信,硬件里一般使用的是嵌入式编程,使用精简的Linux系统,使用C语言编程
  • 遵循这些协议,一般都使用socket进行通信

心跳与连接

  • 心跳保持连接,但是不能只用心跳,数据通信也算
  • 对于断开连接,要慎重,要有心跳次数

报错与捕获

  • 数据不完整,报错,要处理黏包,要捕获报错,不能一报错就断开连接了
  • 网络连接不稳,数据并发太大,数据包过多,数据丢失,都有可能
  • TODO: 先发上,再完善
相关推荐
凤凰院凶涛QAQ1 小时前
《Java版数据结构 & 集合类剖析》栈与队列:“push/pop 是栈的灵魂,offer/poll 是队列的骨架——四组 API,两种人生”
java·开发语言·数据结构
掘金_答案2 小时前
上线那天,一个 ConcurrentHashMap 差点送走我的 AI 客服——3 天排查 JVM 血泪史
java·后端·架构
猿与禅2 小时前
CosId 分布式 ID 生成器完全教程:从架构原理到生产落地
java·shardingsphere·雪花算法·分布式id·高性能·cosid·号段模式
MindUp2 小时前
企业网盘权限模型解析:多层级访问控制与审计能力选型指南
java·linux·运维
NG4772 小时前
【软件设计与体系结构】-策略设计模式
java·设计模式·软件工程
程序员天天困3 小时前
优雅记录操作日志:从注解到 SpEL 的全链路实践与开源方案对比
java·后端
战血石LoveYY3 小时前
Integer类型超限,导致数据异常
java·算法
乐观的Terry5 小时前
1、为什么要自己造发布系统
java·spring boot·后端·spring cloud·架构
兰令水5 小时前
hot100【acm版】【2026.7.13打卡-java版本】
java·开发语言·数据结构·算法·leetcode·面试
嗝屁小孩纸5 小时前
Maven版本升级&Nexus推送极简执行步骤
java·elasticsearch·maven