物联网网关建设与整体架构数据流说明
最近在给别人做一套车联网系统(其实就是利用GPS+视频+主动安全+一些其他辅助性设备对货物运输安全以及司机驾驶行为的监管)。由于客户的要求比较高,从框架设计—>功能模块定义—>UI界面设计—>系统实现,对整个系统都进行了较为合理的规划。整个系统架构主要可以分为3大部分:平台这块的话就没什么可说的了,WebApi+Vue.js网关采用了Netty+MQ在网关与平台交...
最近在给别人做一套车联网系统(其实就是利用GPS+视频+主动安全+一些其他辅助性设备对货物运输安全以及司机驾驶行为的监管)。由于客户的要求比较高,从框架设计—>功能模块定义—>UI界面设计—>系统实现,对整个系统都进行了较为合理的规划。
整个系统架构主要可以分为3大部分:
- 平台这块的话就没什么可说的了,WebApi+Vue.js
- 网关采用了Netty+MQ
- 在网关与平台交互的过程中加入了消费者与Redis
整个系统框架的数据流走向大致如下图所示(还有很多过程数据,这里就没有详细列出):
整个系统将划分的粒度相对比较细,也是考虑客户(做运营的)如果车辆后期增加的话,可以采用集群或者分布式的方式进行部署。数据库也采用了分布式的设计,应该可以承载几十万台终端的正常运营的。
网关这块测试比较多,我使用的是部标过检工具,购买了一台月的阿里云4核8G,5M带宽的ECS,利用部标过检工具,模拟了1.2万台808设备,网关的解析GPS数据,并发量在3000条/s左右,已经远远超过了交通部要求的2000条/s。这个时候用来测试的阿里云ECS的带宽占用率到达了80%(4M)以上,而且部署网关的ECS带宽使用已经临近瓶颈。感觉如果条件允许,单点至少可以支持2万台以上808的设备接入,然后再对网关做个集群,就完全不需要担心网关这块的处理能力了。
针对网关这块,我还有份详细的测试报告,下次放出来(在办公电脑上,疫情期间无法办公...)。
平台我选择的是获取redis里面的实时数据,统一用WebApi将定位数据传给前端。平台下发指令也是统一通过WebApi直接将指令数据存储到MQ的相对应的主题中。
其他报警,业务数据,消费者处理,然后存入数据库即可。
整个架构并不是多么牛X,但是实现起来是很快,而且后期维护,很容易让别人上手。稳定性的话,网关那块是经过一个月的压力测试的。
有喜欢物联网的朋友可以一起交流,一起学习,一起进步...
个人也会有一些项目,大家可以一起挣点零花钱...
可以用CSDN的私信功能私信我,或者QQ:571521973
更多推荐
所有评论(0)