这是一套完整的、已落地验证的车联网管理平台,支持JT808协议设备接入、OBD实时数据采集、主控板状态监控、智能报警推送、设备生命周期管理等全链路功能。系统采用高并发架构设计,单机支持5000+设备同时在线,可快速部署为任何车队管理场景的企业级解决方案。
车辆位置无法实时掌握 高德/百度地图实时定位,SSE推送秒级更新
油耗成本居高不下 OBD 66个数据字段采集,柴油车滑动平均滤波算法精准计算
设备故障发现滞后 20+智能报警规则,超速/震动/缺水/高温实时推送
维保记录混乱 PEM电解槽/滤芯寿命监控,更换记录完整追踪
多语言管理困难 中/英/葡三语界面,国际化团队无缝使用
设备离线无法感知 在线/离线状态实时监控,自动标记异常
1. 整体架构与设计思路
本项目是针对新能源商用车队管理场景设计的完整车联网平台,核心设计思路是“网关-服务-数据”三层解耦:
协议网关层(Python):独立部署的JT808网关,负责处理设备长连接、协议解析、CRC校验和转义还原。采用多进程Worker模式,将高IO的协议处理与业务逻辑分离,避免阻塞主线程。
业务服务层(Java Spring Boot):采用RESTful API设计,通过JWT令牌保证接口安全。系统划分为设备管理、车辆管理、OBD数据、报警规则、工单管理、维保监控等多个独立模块,各模块通过Service层协调,支持水平扩展。
数据缓存层(Redis + MySQL):Redis承担设备在线状态、限流计数、OBD缓存等高频读写场景;MySQL负责车辆档案、报警记录、工单流水等结构化持久化存储,两者配合降低了数据库压力。
实时推送层(SSE):通过Server-Sent Events实现设备位置、OBD数据、报警信息的秒级推送到前端,避免客户端轮询造成的资源浪费。
整体设计遵循“高内聚、低耦合”原则,网关、后端、推送服务均可独立部署,满足车队规模从几十台到数千台的弹性扩展需求。
2. “我”的负责模块与量化结果
本人作为全栈负责人,独立完成了除UI设计外的全部开发工作,具体模块与成果如下:
模块 工作内容 量化成果
JT808协议网关 自研Python网关,实现终端注册、鉴权、心跳、位置汇报、OBD透传全流程,支持分包粘包处理和CRC-ITU校验 单机支持5000+设备并发,采用4 Workers并行处理,消息处理延迟 < 500ms
OBD数据解析 解析燃油车(0x02) 和柴油车(0x01) 两种FF数据格式,共66个字段;柴油车采用滑动平均滤波算法计算百公里油耗 百公里油耗计算误差控制在±5% 以内,数据有效率达到96%
后端API服务 基于Spring Boot开发55个Controller、52个Service,涵盖车辆、设备、OBD、报警、工单、维保等全部业务 API平均响应时间< 200ms,支持JWT认证和License授权双重鉴权
前端交互页面 独立完成70个HTML页面,包含仪表板、地图定位、轨迹回放、OBD数据、主控监控、设备维保、工单管理等全功能 支持中/英/葡三语国际化(3000+ 翻译Key),适配PC/平板/手机端
数据库设计 设计46张表,涵盖位置、OBD、主控、报警、工单、日志等全业务场景 单表支持千万级数据量,批量写入优化至100条/批次
SSE实时推送 实现7种推送类型(OBD、主控、仪表板、报警、工单、通知、设备状态) 推送延迟 < 1秒,支持多端并发连接
设备维保模块 开发PEM电解槽/滤芯寿命监控、更换重置、运行日志完整功能 支持4种组件类型的阈值预