物流公司远程信息管理系统,实现远程车辆监控和控制。
1.项目介绍
本项目的应用场景是物流公司的远程信息管理。管理员可以远程查看汽车的状态,并设置汽车的上锁和开锁。
2.项目难点
2.1 设备接入点设计
设备接入方式采用交通部的JT/T808标准协议。具体而言,设备和JT/T808服务器之间基于UDP/TCP来建立连接,并基于特定的消息体格式进行通信。本项目的其中一个目标是设计一个具备较好的抗并发能力的JT/T808接入点,类似MQTT协议的EMQ节点。我们将它取名为jet,属于我们的armee项目的子项目之一。目前而言,准备采用Java来进行开发,后期是否可以采用更加适合于消息中间件的语言开发?
-
设备消息解析
设备的消息是完全遵循JT/T808标准的。jet节点需要按照JT/T808标准进行消息的解析。
对于一些信息需要保存到数据库中,比如终端注册信息,而有些消息只需要分发到消息中间件即可
周边:(1)数据库创建脚本
-
设备鉴权
设备的信息(包括密码)源可配置,一般将设备信息源配置到MySQL、MongoDB等数据库。
周边:(1)设备信息录入脚本,实现从文档中读取设备信息,并存放到MySQL、MongoDB等数据库中。
-
消息分发
jet节点可以通过配置的方式将数据分发到Kafka、RabbitMQ等消息中间件。
所有消息都分发到一个Topic中,并根据一致性哈希算法来指定到某一个分区(对于Kafka而言,RabbitMQ目前还未使用过)。具体而言,一致性哈希算法是对消息中的手机号(JT/T808标准中的说法,也就是IMSI)
-
消息回复
欢迎关注我的微信公众号
互联网矿工