基于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
相关文章
|
5月前
|
缓存 网络协议 Linux
手把手实现tcp/ip用户态协议栈,帮你实践网络知识(网络必备,面试项目)
手把手实现tcp/ip用户态协议栈,帮你实践网络知识(网络必备,面试项目)
|
2月前
|
消息中间件 DataWorks 物联网
MQTT问题之接入阿里云物联网平台如何解决
MQTT接入是指将设备或应用通过MQTT协议接入到消息服务器,以实现数据的发布和订阅;本合集着眼于MQTT接入的流程、配置指导以及常见接入问题的解决方法,帮助用户实现稳定可靠的消息交换。
163 1
|
3天前
|
网络协议 Java API
深度剖析:Java网络编程中的TCP/IP与HTTP协议实践
【4月更文挑战第17天】Java网络编程重在TCP/IP和HTTP协议的应用。TCP提供可靠数据传输,通过Socket和ServerSocket实现;HTTP用于Web服务,常借助HttpURLConnection或Apache HttpClient。两者结合,构成网络服务基础。Java有多种高级API和框架(如Netty、Spring Boot)简化开发,助力高效、高并发的网络通信。
|
5天前
|
消息中间件 存储 JavaScript
阿里云IOC物联网异步处理基础概念
该内容介绍了异步处理基础和消息队列的相关概念。首先,同步处理指任务完成后才能执行其他操作,而异步则允许任务并行执行,不阻塞程序。异步能提高系统并发性和响应性,但也增加复杂性和资源消耗。接着,提到了消息队列,包括生产者、消费者、队列、broker和topic等概念,并指出在IoT中,设备作为生产者发送消息到特定topic,消费者从队列获取数据。最后,简要介绍了AMQP协议,它是用于应用程序间消息传递的开放标准,常用于分布式系统和物联网,如RabbitMQ和Apache Qpid。课程将以Apache Qpid为例接收IoT数据。
116 6
阿里云IOC物联网异步处理基础概念
|
2月前
|
消息中间件 网络协议 物联网
MQTT协议问题之阿里云物联网服务器断开如何解决
MQTT协议是一个轻量级的消息传输协议,设计用于物联网(IoT)环境中设备间的通信;本合集将详细阐述MQTT协议的基本原理、特性以及各种实际应用场景,供用户学习和参考。
129 1
|
3月前
|
存储 安全 物联网
安防摄像头IPC如何快速接入阿里云Link Visual视频服务(阿里云生活物联网)
Link Visual是生活物联网平台针对视频产品推出的增值服务,提供视频数据上云、存储、转发、AI计算等能力。 大白话就是:通过阿里云的Link Visual视频服务,可以让你的IPC摄像头设备完成上云功能,并快速实现如下功能介绍中的功能。其中可以享受阿里云P2P协议支持,帮助企业节省流量服务器流量带宽。
293 7
|
6月前
|
消息中间件 Java 物联网
[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台(二)
[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台(二)
322 0
|
25天前
|
Ubuntu JavaScript 关系型数据库
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
在阿里云Ubuntu 20.04服务器上部署Ghost博客的步骤包括创建新用户、安装Nginx、MySQL和Node.js 18.x。首先,通过`adduser`命令创建非root用户,然后安装Nginx和MySQL。接着,设置Node.js环境,下载Nodesource GPG密钥并安装Node.js 18.x。之后,使用`npm`安装Ghost-CLI,创建Ghost安装目录并进行安装。配置过程中需提供博客URL、数据库连接信息等。最后,测试访问前台首页和后台管理页面。确保DNS设置正确,并根据提示完成Ghost博客的配置。
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
|
29天前
|
存储 分布式计算 网络协议
阿里云服务器内存型r7、r8a、r8y实例区别参考
在阿里云目前的活动中,属于内存型实例规格的云服务器有内存型r7、内存型r8a、内存型r8y这几个实例规格,相比于活动内的经济型e、通用算力型u1实例来说,这些实例规格等性能更强,与计算型和通用型相比,它的内存更大,因此这些内存型实例规格主要适用于数据库、中间件和数据分析与挖掘,Hadoop、Spark集群等场景,本文为大家介绍内存型r7、r8a、r8y实例区别及最新活动价格,以供参考。
阿里云服务器内存型r7、r8a、r8y实例区别参考
|
30天前
|
SQL 弹性计算 安全
购买阿里云活动内云服务器之后设置密码、安全组、增加带宽、挂载云盘教程
当我们通过阿里云的活动购买完云服务器之后,并不是立马就能使用了,还需要我们设置云服务器密码,配置安全组等基本操作之后才能使用,有的用户还需要购买并挂载数据盘到云服务器上,很多新手用户由于是初次使用阿里云服务器,因此并不知道这些设置的操作流程,下面给大家介绍下这些设置的具体操作流程。
购买阿里云活动内云服务器之后设置密码、安全组、增加带宽、挂载云盘教程

相关产品

  • 物联网平台