基于TCP协议的GPS定位器设备迁移到阿里云IoT物联网平台实践

简介: 基于TCP协议系统迁移到MQTT的IoT平台

背景

GPS定位器是内置了GPS模块和移动通信模块的终端,用来将GPS模块获得的定位数据通过移动通信模块传至Internet上的一台服务器上,从而可以实现在电脑或手机上查询终端位置。

GPS定位器可用于儿童和老人的行踪掌控,公路巡检,贵重货物跟踪,追踪与勤务派遣,私人侦探工具,个人财物跟踪,宠物跟踪,野生动物追踪,货运业,汽车防盗,自行车防盗,电动车防盗,摩托车防盗,银行运钞车,公务车管理等。

传统定位器方案

定位器设备启动后,基于TCP/IP协议和云端的业务服务器建立连接,然后通过校时指令来同步时钟,之后定时发送心跳包来保持TCP长连接,GPS数据变化超过阈值时,自动上报当前坐标的经纬度值,设备电量变化信息也会定时上报到云端,以便优化GPS数据采集规则。

云端服务器也可以推送配置信息和控制指令到定位器设备,以改变定位器行为模式。

image.png

image.png

定位器业务上云

随着云计算厂商布局物联网场景技术产品,基于MQTT协议的全托管的IoT云服务逐渐成为70%中小企业做物联网业务的首选方案。从TCP协议迁移到MQTT协议的方案也逐渐成熟,以实现存量设备低成本的快速迁移上云,减少设备端和业务系统的改造,极大的提升整体安全性,稳定性,大大降低业务时延,借助云上动态无限扩容能力承载海量规模增长。

image.png

当我们把设备连接迁移到阿里云IoT物联网平台之后,重新梳理业务链路,会发现IoT物联网服务承载了繁重的和设备交互的工作,云上的业务服务器压力变得小了很多。
image.png

身份认证

定位器设备和IoT物联网平台基于MQTT协议通信,TCP报文调整为MQTT的CONNECT/CONNACK报文,此时业务服务器不需要做身份校验工作,IoT物联网平台会把设备上线/离线消息通过规则引擎实时推送到业务服务器。

时钟同步

企业基于TCP搭建的时钟同步服务也可以下线了,IoT物联网平台提供了完整的NTP服务,解决嵌入式设备资源受限,端上没有精确时间戳的问题。详细文档 https://help.aliyun.com/document_detail/102509.html
image.png

心跳

MQTT协议本身约定了PINGREQ/PINGRESP的心跳机制,此时也不需要业务服务器介入,IoT物联网平台会响应设备心跳行为。

双向消息通信

基于MQTT协议通信是需要约定topic和payload,为了减少业务系统改动,我们增加两个Topic定义,消息报文结构体保持不变。

image.png
设备上报业务数据后,通过规则引擎配置,我们把上行的Topic:/{pk}/{dn}/user/up中的payload数据实时流转到业务系统,数据格式不变;业务系统推送配置信息或指令时,IoT物联网平台封装到下行的Topic:/{pk}/{dn}/user/up中的payload里,设备接收到的业务数据格式不变。

迁移实战

创建产品,定义通信Topic

image.png

创建服务端订阅消费组

image.png

配置规则引擎

设备上报数据流转到服务端订阅消费组
image.png
选择消费组,并携带Tag信息到业务系统
image.png

设备启动,上报数据后,在业务服务端收到数据

image.png

控制台查看消费组情况

image.png

日志服务

image.png

image.png

【往期回顾】

1.自建MQTT集群迁移阿里云IoT平台
2.IoT时代:WiFi配网技术剖析
3.微信小程序和IoT智能家居实践
4.IoT云端通用数据解析脚本实践

image.png

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
2月前
|
存储 容灾 安全
在阿里云RDS(Relational Database Service)迁移前准备目标区域选择
在阿里云RDS(Relational Database Service)迁移前准备目标区域选择
25 3
|
7天前
|
存储 安全 物联网
使用 Java 进行物联网(IoT)应用开发
【4月更文挑战第19天】Java,凭借其跨平台特性和丰富库,成为物联网开发热门选择。开发者利用Java进行物联网应用开发,可实现设备连接、数据处理、数据库管理及安全保障。熟悉Java基础、物联网知识、数据通信和数据库管理是必备技能。利用MQTT客户端、数据存储框架和可视化工具能提升开发效率。随着物联网发展,Java在该领域的影响力将持续增强。
|
1月前
|
SQL 数据可视化 Apache
阿里云数据库内核 Apache Doris 兼容 Presto、Trino、ClickHouse、Hive 等近十种 SQL 方言,助力业务平滑迁移
阿里云数据库 SelectDB 内核 Doris 的 SQL 方言转换工具, Doris SQL Convertor 致力于提供高效、稳定的 SQL 迁移解决方案,满足用户多样化的业务需求。兼容 Presto、Trino、ClickHouse、Hive 等近十种 SQL 方言,助力业务平滑迁移。
阿里云数据库内核 Apache Doris 兼容 Presto、Trino、ClickHouse、Hive 等近十种 SQL 方言,助力业务平滑迁移
|
1月前
|
关系型数据库 MySQL 数据库
使用阿里云的数据传输服务DTS(Data Transmission Service)进行MySQL 5.6到MySQL 8.0的迁移
【2月更文挑战第29天】使用阿里云的数据传输服务DTS(Data Transmission Service)进行MySQL 5.6到MySQL 8.0的迁移
225 2
|
1月前
|
消息中间件 存储 Cloud Native
深度剖析 RocketMQ 5.0,IoT 消息:物联网需要什么样的消息技术?
本文来学习一个典型的物联网技术架构,以及在这个技术架构里面,消息队列所发挥的作用。在物联网的场景里面,对消息技术的要求和面向服务端应用的消息技术有什么区别?学习 RocketMQ 5.0 的子产品 MQTT,是如何解决这些物联网技术难题的。
90839 4
|
1月前
|
弹性计算 NoSQL 测试技术
倚天使用|Redis性能高30%,阿里云倚天ECS性能摸底和迁移实践
Redis在倚天ECS环境下与同规格的基于 x86 的 ECS 实例相比,Redis 部署在基于 Yitian 710 的 ECS 上可获得高达 30% 的吞吐量优势。成本方面基于倚天710的G8y实例售价比G7实例低23%,总性价比提高50%;按照相同算法,相对G8a,性价比为1.4倍左右。
137509 5
|
2月前
|
SQL 监控 关系型数据库
规划阿里云RDS跨区迁移业务需求迁移方案设计
规划阿里云RDS跨区迁移业务需求迁移方案设计
39 5
|
5天前
|
存储 供应链 物联网
未来技术纵横谈:区块链、物联网与虚拟现实的融合革新
【4月更文挑战第21天】 随着科技不断进步,新兴技术正在重塑我们的世界。本文将深入探讨三种引人注目的技术——区块链、物联网(IoT)和虚拟现实(VR)——它们各自的发展趋势及其在不同领域的应用前景。区块链技术以其不可篡改的数据记录特性,在金融安全、供应链管理等领域展现出巨大潜力;物联网通过智能设备互联,推动智能家居、智慧城市的发展;而虚拟现实则以其沉浸式体验,改变教育、娱乐等多个行业的面貌。这些技术的交叉融合预示着一个更加智能、互联和虚拟的未来。
17 5
|
4天前
|
供应链 安全 物联网
未来技术纵横谈:区块链、物联网与虚拟现实的融合革新
【4月更文挑战第22天】 在数字化浪潮中,新兴技术的蓬勃发展正推动着传统行业的变革与升级。区块链技术以其不可篡改和去中心化的特性,为数据安全和信息透明提供了新的解决方案;物联网(IoT)通过智能设备的互联互通,实现了环境与行为的智能化管理;而虚拟现实(VR)技术则拓展了人们的感官体验,创造了沉浸式互动的新空间。本文聚焦于这些技术的发展趋势,探讨其在多个应用场景中的结合与创新,旨在描绘一幅技术交织下的未来蓝图。
15 3
|
1天前
|
安全 物联网 区块链
未来技术的融合潮流:区块链、物联网与虚拟现实的交汇点
【4月更文挑战第25天】 随着科技的不断进步,新兴技术如区块链、物联网(IoT)和虚拟现实(VR)已逐渐从概念验证走向实际应用。这些技术不仅单独发展迅猛,而且开始相互融合,创造出前所未有的应用场景和商业模式。本文将深入探讨这些技术的发展趋势,分析它们如何协同工作,以及在多个行业中的潜在应用。特别地,我们将聚焦于金融、医疗和娱乐等行业,揭示这些技术如何推动创新并带来颠覆性的变化。

相关产品

  • 物联网平台