使用SpringCloud架构整合MybatisPlus可持续框架,采用consul分布式集群完成了微服务项目搭建,服
务、kafka、redis、zk和consul等均使用docker容器化部署。结合公司车辆REID识别引擎,实现了适用于国
内高速路口门架和收费站的数据管理计算平台。
本人主要负责了定时图表统计服务、车辆布控任务服务、配置中心服务、数据对接服务的开发工作。
(1)定时任务和redis分布式锁,控制任务避免多节点重复执行。
(2)rpc读数据定时生成数据表。项目数据量庞大,设置时表天表分批量呈现,用future框架异步定时统计。
(3)引入轻舟平台区控服务,redis提升布控性能,feign获取车辆原始数据,使用一级缓存、二级缓存和数
据库分层筛选。
(4)提供报警记录稽核整理,完成视频解析、分片上传、多线程下载、缝合操作,截取特定帧的前后15秒视
频生成回放。因涉及到多种报警记录,采用数据库入口表多线程查找多记录表的方式实现。
配置中心服务:
(1)使用K-V页面配置方式,将所有服务的公共配置抽取出来。
(2)配置文件通过页面新增、编辑、批量上传至ftp存储,可对ftp上传下载删除等操作。可保存所有配置文件
历史记录,通过前端切换、还原、覆盖。
(3)完成分中心开发,使用redis将分中心和业务路段抓拍点绑定,全局控制数据备份和删除。
(4)完成维护中心开发工作。可将服务容器化镜像的tar包通过Minio上传、校验、使用scp部署至多个节点
并使用脚本运行启动。
地图轨迹算法(主要运用数学向量和微积分线性代数相关知识):
(1)对地图上车辆运行轨迹做出合适距离的平行线,使得每相邻拐点的平行线呈现出弯折平行的效果。
(2)本系统中业务门架存在偏移现象,设计算法,使得所有门架点均可映射至对应路段,并完成行车轨迹在
各门架点之间的运行效果。