车云TCP链路偶现链接失联问题排查

发布时间:2023年12月23日

?一、问题分析

1.1 车云tcp长连接分析排查

在15:37:32.039上线, 在 16:07:26.527下线,车云长连接通道稳定,且该期间心跳数据正常。

1.2 云向驾仓推送数据分析

在15:37:42 进行车辆接管后,该车辆下线,且无法在上线,排查日志,15:37:32.048 时向驾仓推送36车辆, 15:37:44.928 时向驾仓推送了空车辆数据。

?Dec 20, 2023 @ 15:37:32.048 VehicleListEventListener userId:63,online:["48:b0:2d:4d:69:fa"],exception:[]

?Dec 20, 2023 @ 15:37:44.928 VehicleListEventListener userId:63,online:[],exception:[]

1.3 车辆接管事件分析

查询 t_parallel_vehicle 表,检索处于在线状态的车辆推送给驾仓。

车辆上下线的时候,会对车辆在线状态进行修改。

二、问题原因

车辆上线时,会高频发送rtk数据,云端会根据rtk数据修改车辆的驾驶状态(手动驾驶、自动驾驶、平行驾驶)等各种状态数据,此时会查询车辆的在线状态,并将该数据修改回数据库中。

rtk的数据操作车辆在线状态的操作发生了数据库的并发修改问题,导致了此操作把车辆的在线状态改成了错误的状态。

三、 修改方案

将车辆 在线状态的修改操作单独封装,只有车辆上下线的时候进行修改。其他业务功能删除掉该状态的相关操作,避免该状态并发修改问题的发生。

四、 测试方案与结果

1)方案:

在多个弱网区域多次来回跑

2)结果:

36车经过14个弱网区域,降级6次,掉线4次,掉线后均在五秒内上线

文章来源:https://blog.csdn.net/John_ToStr/article/details/135117535
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。