1 项目架构优化,项目可持续性规划,代码质量提升,重构及濒危项目拯救(技术层面)
2 高质量业务实现,后端和移动端(小程序,Web端)
3 指导和帮助团队成员,提升业务质量,增强业务可持续性
4 后端中间件和Java生态框架源码解读和分享
美腾自动偏载调偏,是因为在装车过程中会造成车厢内部填充不均匀,因此需要软件辅助调整。其关键在于,当前车厢形态数据的搜集,过滤,统计,特定算法判断,及结果的应用。硬件采用西克雷达(一种类似与激光测距的手段,位于车厢上方),在1.0版本中,因为项目历史的原因车厢形态的数据收集是基于线程监听的方式,即偏载调偏开启一个单独的线程,不断的轮询装车的数据,遇到符合要求的新数据就开始工作,这种方式的效率差,耦合性极高,并且会有数据不全的情况,导致结果不准确。因此在2.0升级的过程中,绝大部分流程都更改为基于事件的模型,扩展了Spring的ApplicationEvent,并进行了深度的流程优化(比如,服务端线程管理,主控的程序的事件点切分,生命周期划分等)。偏载调偏不再主动轮询,而是被动的等待事件到来,不管是效率还是程序结构上都有极大的提高。在接受到数据之后使用内存List存储进行数据清洗,因为雷达会存在个别数据点位过高不正常的问题,在该步骤之后保证数据都是正确并且可用的。数据清洗采用的是Filter模式,之后调用特定算法进行数据模型的检验,调整。算法本身比较复杂,因此采用的是外观模式,屏蔽了内部细节。在计算出结果之后,发出调整偏载调偏成功事件,同步到Redis进行持久化。后续的原始数据,及调整的日志和一些报告信息通过kafka发生到服务端,以便后续分析调研。