华为云计算 云知识 如何基于华为云IoT开发物联网应用?
如何基于华为云IoT开发物联网应用?

整体方案

物联网应用是企业和开发者进行设备管理、告警&故障监测、业务监控、数据分析的重要工具。 物联网平台 屏蔽了设备接入的复杂性和协议的差异性,解耦应用与设备,为上层应用提供统一格式的数据,简化终端厂商开发的同时,也让应用提供商聚焦于自身的业务开发。基于华为云IoT物联网平台的应用开发方案如下。

1.png

应用服务器作为应用侧的业务处理核心,分析物联网平台推送的设备消息,并根据分析结果与应用客户端进行交互,完成业务处理。

不同企业,即使针对同一产品,业务逻辑也可能不同,应用开发往往定制性较高。基于该现状,华为物联网平台提供了三种不同的开发方式。

三种开发方式

基于华为物联网平台,您可通过API、SDK或低代码开发服务如可视化大屏DLV或应用魔方AppCube等开发应用。同时配套多样化的开放套件,满足不同合作伙伴所需。三种开发方式对比如下:

开发方式

优势

不足

适用场景

调用API接口

  • 开发灵活,随需调用API接口。

  • 对于应用开发语言无限制,支持所有的开发语言。

  • 开发工作量、开发难度相比集成SDK大。

  • 应用上线周期相对较长。

  • 需要额外购买服务器资源。

  • 企业开发能力强,需灵活使用物联网平台的能力。

  • 企业已有应用服务器,需要对接物联网平台。

集成SDK

  • 代码开发工作量较小,开发能力的门槛相比直接调用API接口较低。

  • 开发周期短。

  • 与直接调用API接口相比,开发的灵活性稍差。

  • 开发语言仅支持Java、PHP和Python。

  • 需要额外购买服务器资源。

低代码开发

  • 应用开发操作图形界面化,操作简便。

  • 提供典型场景的应用模板,应用十分钟快速上云。

  • 直接托管在华为云,无需购买额外的服务器资源。

  • 可扩展性差,只能使用平台提供的功能组件

企业对应用的个性化的定制要求不高,需要快速构建和上线应用。

基于API开发物联网应用

物联网需要哪些API

物联网平台把自身丰富的管理能力通过API的形式对外开放,包括产品管理、设备管理、设备组管理、标签管理、设备CA证书管理、设备影子、设备命令、设备消息、设备属性、订阅管理、规则管理、批量任务等,帮助用户快速构筑基于物联网平台的行业应用。您可以根据本文档提供的API来使用物联网平台的服务,平台支持的全部API请参见API列表

调用说明

物联网平台提供了RESTful(Representational State Transfer)风格API,支持您通过HTTPS请求调用,调用方法请参见如何调用API

物联网平台的Endpoint请参见:地区和 终端节点

使用限制

  • API的演进会保持前向兼容性,若接口升级了版本,其旧版本接口可以继续使用,但功能不再做增强,新增功能仅在新版本接口中提供。
  • 应用在接收处理物联网平台发送的响应消息和推送消息时,需要兼容或忽略消息中的新增参数,不能因为消息中的新增参数导致应用的处理异常。
  • 调用API的其他使用限制,请参见物联网平台的使用限制

基于SDK开发应用

物联网平台提供应用侧SDK和设备侧SDK,方便设备通过集成SDK接入到平台,应用通过调用物联网平台的API,实现安全接入、设备管理、数据采集、命令下发等业务场景。点击查看详细的SDK列表

基于图形化SaaS服务开发应用

华为云物联网平台提供规则引擎能力,支持将设备上报的数据转发至华为云其他 云服务 ,如可由 数据可视化 服务(DLV)读取数据呈现为可视化报表,实现数据的一站式采集、处理和分析。可查看最佳实践:零代码搭建物联网监控大屏 了解相关案例。

如何搭建应用服务器

基于API和SDK开发应用时,都需要搭建应用服务器,搭建应用服务器有以下3种方案。

  • 弹性 云服务器ECS :是一种可随时自助获取、可 弹性伸缩 云服务器 ,帮助用户打造可靠、安全、灵活、高效的应用环境。用户无需关注硬件,即租即用,按使用量付费,易扩容;建设周期短,上线快。同时ECS提供全套管理维护工具,简化部署和维护的步骤。

  • 本地服务器:需要企业自行购买、配置和管理服务器。自由度高,但建设周期长,系统上线慢,需要企业自行维护。

  • 本地PC:一般仅用于开发者在调试时使用,需要PC一直开机,程序持续运行。

需要特别注意的是,应用服务器需要使用公网地址,例如订阅推送、应用客户端访问等场景。如果使用公司或校园的局域网,要进行NAT穿越。

上一篇:SCSI磁盘的常见使用场景和建议 下一篇:华为云定价原则有哪些?
企业物联网分会场

构建万物互联智能世界,物联网流量服务低至1折,设备上云包年71折起