基于华为云IoT Studio自助生成10万行代码的奥秘
华为IoT小助手们搬好板凳、备好笔记本、听了HDC.Cloud的几场华为云技术架构师的直播讲课,感觉获益匪浅却又似懂非懂,直后悔自己没有好好打下基础。为了避免再次出现这样的情况,小助手偷偷跑去找了华为云IoT Studio首席架构师黄树林老师,想开个小灶。黄老师禁不住好学的小助手的软磨硬泡,开始娓娓道来:
戳→看直播回顾
01 物联网设备厂商遇到的难题
从上世纪80年代起,科技迅猛发展,人类经历了以连接“人”为主体的PC时代和以连接“应用”为主体的移动互联网时代,现在又跨入了连接“物”的智能时代,物联网的黄金时代即将来临。那么,一个合格的物联网厂商需要具备哪些条件呢?
“联接物”的前提,就是设备能联网,也就是说,厂商需要具备设备接入的能力。业界在这方面已经有相当成熟的方案支撑。而端侧数据收集上来后,该如何处理和使用,这才是物联网企业需要思考的另一大要点。这要求厂商需要具备应用开发的能力,也是他们面临的最重要的难题。
02 华为物联网应用开放能力的实践及演进过程
其实,华为作为一个物联网平台提供商,在为物联网设备厂商提供应用开发服务的过程中也走了不少弯路。从刚开始的只提供API开发,到后来提供设备管理SaaS,最后提供应用引擎,三个阶段互为补充,满足不同层次的企业使用。而这个过程跟华为的物联网平台发展强相关。

在第一阶段,华为云IoT主要为应用开发提供了北向API及配套的SDK。在这一阶段内,大部分的项目需求是定制开发的,期间更是面临了物联网安全、性能、大容量,跨大洲网络时延等种种问题。而通过这些项目,我们的物联网平台也积累了一些大容量、高安全的经验及组件,这些已经沉淀下来以各种API的形式开放给大家使用。但是,这些方案构筑非云原生架构,应用的可复制能力有限。同时,一个项目的代码开发工作量可达30万行以上,开发周期通常需要耗费半年以上,投入巨大,可谓是费时又费力。
为了解决这些问题,我们的工程师们开始参照业界的解决思路,也促使我们的华为云IoT平台的应用开发能力迈入了第二阶段——设备管理SaaS服务阶段。
华为云IoT Studio云服务提供的Web应用在线开发,是一种无 码化的物联网应用开发SaaS服务,帮助无专业软件开发和运维能力的中小企业便捷、快速构建应用,轻松管理全球化设备,实现对设备的远程监控、分析及运营统计等能力,大大降低物联网行业应用上云的难度。
目前的应用开发,统计报表都是通过开发人员硬编码完成统计图表,但每次调整报表代价很大。因此,自定义报表就成为了SaaS服务的关键能力。IoT Studio提供的自定义报表能力,允许开发者通过无 码化的方式开发统计报表。由于内部预置了OLAP引擎做统计报表的数据预统计,其可以达到亿级的数据量在1秒钟内出统计报表。同时,还支持灵活可拓展的数据统计和交互式报表统计,大大提高用户体验。
诚然,IoT Studio的出现减轻了代码的开发门槛和工作量,又满足了行业方案个性化拓展的需求,还为实现大规模复制提供了可能。但是,仅仅做无 码化SaaS就足够了吗?据统计,针对轻量级应用开发,大概70%的开发页面是业界可以通用的,但还有30%的页面需要客户自行开发。那这又怎么办呢?华为云IoT的应用构建因此步入了第三阶段——基于应用引擎开发应用。
应用引擎就是应用开发助推器,是基于SaaS能力的扩展,期望能帮助开发者构筑自己的应用,把“脏活、苦活”自己包了,“有价值的活”留给开发者,让开发者更聚焦。华为应用引擎,提供物联网应用基础能力、应用框架扩展能力和微服务框架及托管的能力。
使用IoT Studio提供的工具,自动生成微服务框架,提供SDK可以更快捷地使用应用引擎预置的基础能力。开发者在此微服务框架上完成开发,并托管到华为云。自动生成的微服务框架及各组件demo代码,可达10万行。
总的来说,API开放是以非托管的方式提供可完全定制开发的服务给有足够开发人员的企业使用;SaaS方式支持有限的定制配置,可以给无开发人员或少量开发人员的中小企业使用;应用引擎则主要适用于拥有少量开发人员且有一定的定制需求的企业使用,支持有限的自定义编码开发。也就是说,华为云IoT Studio能够为不同类型的开发者提供最适合他们的服务,助力他们完成自己的物联网解决方案开发。
戳→看直播回顾
基于华为云IoT Studio自助生成10万行代码的奥秘的更多相关文章
- 基于华为云IOT及无线RFID技术的智慧仓储解决方案最佳实践系列一
[摘要]仓储管理存在四大细分场景:出入库管理.盘点.分拣和货物跟踪.本系列将介绍利用华为云IOT全栈云服务,端侧采用华为收发分离式RFID解决方案,打造端到端到IOT智慧仓储解决方案的最佳实践. 仓储 ...
- 聊聊如何在华为云IoT平台进行产品开发
摘要:华为云物联网平台承载着南北向数据互通的功能职责. 本文分享自华为云社区<如何基于华为云IoT物联网平台进行产品开发>,作者: Super.雯 . 华为云物联网平台承载着南北向数据互通 ...
- 直击Huawei Mate 40产线背后的华为云IoT智能制造
摘要:数字孪生?在数字世界找到物理世界的设备! 本文分享自华为云社区<[云驻共创]Huawei Mate 40产线直击之华为云IoT智能制造助力工厂数字化转型>,原文作者:启明. Part ...
- 基于STM32+华为云IOT设计智能称重系统
摘要:选择部署多个重量传感器和必要的算法.通过WiFi 通信模块.GPS定位模块,采集车辆称重数据一地理位置信息,并通过网络发送至云平台,设计图形化UI界面展示称重.地图位置等重要信息,实现对称重系统 ...
- CC2530_ZigBee+华为云IOT:设计一套属于自己的冷链采集系统
摘要:以CC2530单片机为核心器件,设计一个冷链环境信息采集系统,利用传感器技术对冷藏仓内的环境参数进行采集,上传到华为云物联网云平台,然后通过手机端或移动端进行显示,便于分析,观察冷链环境信息. ...
- OpenHarmony3.0如何轻松连接华为云IoT设备接入平台?
摘要:本文主要介绍基于OpenHarmony 3.0版本来对接华为云IoT设备接入IoTDA,以小熊派BearPi-HM_Nano开发板为例,使用huaweicloud_iot_link SDK对接华 ...
- 基于华为物联网IOT的应用开发 --- 基于.net 的SDK封装
最近,物联网的概念比较热门,一大批厂商抢着占领物联网的高低,包括有华为物联网.阿里云物联网.腾讯物联网.AWS物联网等等,无法一一列举,一般物联网包含设备侧开发.平台侧开发.应用侧开发,三个部分构成了 ...
- 基于华为物联网IOT的应用开发 ---界面管理开发
在前面随笔<基于华为物联网IOT的应用开发 --- 基于.net 的SDK封装>介绍过IOT中应用侧SDK的封装,主要就是基于华为IOT的应用侧封装,以便在应用系统中进行调用.应用侧SDK ...
- 华为云MVP熊保松谈物联网开发:华为云IoT是首选,小熊派是神器
摘要:在AI.5G的技术驱动下,物联网行业的发展愈加如火如荼,开发者在技术的快速更迭间,也得乘风破浪跟上新技术的节奏. 在AI.5G的技术驱动下,物联网行业的发展愈加如火如荼,开发者在技术的快速更迭间 ...
随机推荐
- Layabox 世界坐标和屏幕坐标互转
最近在入坑Layabox,花了几天时间做世界坐标和屏幕坐标的互转,由于Layabox没有现成的代码所以只能自己手动写,大概就是模仿unity里面的ScreenToWorldPoint和WorldToS ...
- eetcode必要技巧--动态规划(一)
首先我们要搞清楚什么是动态规划 动态规划是运筹学中用于求解决策过程中的最优化数学方法.当然,我们在这里关注的是作为一种算法设计技术,作为一种使用多阶段决策过程最优的通用方法. 当然这个很难理解,但是按 ...
- 无刷新上传图片,ajax 和 iframe
iframe 上传 upload.html 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ...
- linux php 安装libiconv过程与总结
问题:在嵌入式linux 已经安装好的php的情景下,需要安装一个扩展库libiconv 背景:从后台传的数据含有中文(gbk2312)的通过json_encode 显示为null,查阅资料发现jso ...
- vue新窗口跳转路由
this.$router.push()方法我在这就不多说了: 看代码: let newUrl = this.$router.resolve({ path: '/test/test' ...
- OPENGL图形渲染管线图解
OPENGL固定图形渲染管线可以粗略地认为由下面的阶段衔接而成: 顶点颜色,光照,材质三个输入在光栅化前控制绘制管线的操作.光照和材质不能单独使用.顶点颜色,光源颜色,材质颜色都有alpha值,它们的 ...
- Java 注解简介
一,什么叫注解 用一个词就可以描述注解,那就是元数据,即一种描述数据的数据.所以,可以说注解就是源代码的元数据.比如,下面这段代码: 1 2 3 4 @Override public String t ...
- oracle中plsql练习-----在控制台输出1到100以内的素数。
一.思路:首先需要知道素数的概念即质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数. 中心思想是,外循环所有的自然数,内循环折半查询,增加代码的速度,注意:从1开始,需要大于1,但是pl ...
- HBU-数据库第五周作业
第五周数据库作业 注意 MySQL的数据库名.表名.列名.别名大小写规则是这样的: 1.数据库名与表名是严格区分大小写的: 2.表的别名是严格区分大小写的: 3.列名与列的别名在所有的情况下均是忽略大 ...
- Falling Squares
2020-01-08 10:16:37 一.Falling squares 问题描述: 问题求解: 本题其实也是一条经典的区间问题,对于区间问题,往往可以使用map来进行区间的维护操作. class ...