物联网主要的开发架构

物联网主要的开发架构

ID:23396747

大小:341.01 KB

页数:19页

时间:2018-11-07

物联网主要的开发架构_第1页
物联网主要的开发架构_第2页
物联网主要的开发架构_第3页
物联网主要的开发架构_第4页
物联网主要的开发架构_第5页
资源描述:

《物联网主要的开发架构》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、物联网主要的开发架构随JavaScript语言的流行,及物联网领域的崛起,我们能看到它们结合的可能性,同时也发现它特别适合于物联网开发。因此,在这篇文章里,笔者将主要从以下三个方面进行介绍:1.典型的物联网架构,及多种语言带来的问题;2.只使用JavaScript语言的物联网架构;3.详解基于JavaScript语言的物联网不同层级结构。那么,先让我们看看典型的物联网架构是怎样的吧。1、典型的物联网架构我们甚至还可以认为,物联网只是对互联网的扩展。与传统的C/S架构相比,它多了一个“数据采集层”,我们称之为传感器层、硬件层等。数据的产出不再只是用

2、户,还来自于各式各样的联网设备。物联网不再局限于使用HTTP协议来传输数据,它还会使用CoAP(受限制的应用协议)、MQTT(消息队列遥测传输)协议。2、物联网的四个层级当前的物联网应用,所要做的就是控制和数据处理。指令,由用户到终端一层一层往下下达,直到硬件端由设备去执行。而数据,便是一层一层往上上报,直至被可视化。因此,与互联网的架构相比(如图1、图2所示),起点与终点不一样了:指令的终点与数据的起点,变成了硬件层,而非最后的用户层。图1互联网架构图2典型的物联网架构数据由客户端A发送到服务端,客户端B再从服务端获取A的数据,如此便算是完成了

3、一个回路。而物联网架构则稍微麻烦了一些,多了一个层级,便多了一个步骤。 硬件层上的微控制器通过直连的方式,采集各式各样的数据,比如温度、湿度等。而受限于微控制器的成本、环境条件等因素,它可能无法直接连接到互联网。因此,需要连接到一些额外的联网设备才能实现。而这些联网设备,会负责处理来自各个硬件设备的数据,并将其上传至服务器。同时,它会提供一个无线(如蓝牙、红外、ZigBee)接口作为数据的入口。因此,这一层级需要有更好的数据处理能力,并且它应该要可以快速开发。因为这些设备主要做的是协调工作,我们习惯于将其称为“协调层”。3、使用多种语言的物联网多

4、年以前,笔者曾做过一个并不复杂的物联网系统:1.使用Python里的Django作为Web服务框架,DjangoRESTFramework创建RESTfulAPI;2.为了使用手机作为控制器,还用Java写一个Android应用;3.使用RaspberryPi作为硬件端的协调层,用于连接网络,并传输控制信号给硬件;4.在硬件端使用Arduino作为控制器,写起代码特别简单;5.还使用了ZigBee模块XBee及I2C作为连接不同Arduino模块的介质;6.最后,还需在网页上做一个图表来显示实时数据。为此,我们需要使用Python、Java、ja

5、vascript、C、Arduino五种语言。而如果我们要写相应的iOS应用,还要用到Objective-C。对于其他物联网项目来说,也多是如此,这简直是一场灾难。在做这样的物联网项目之前,我们需要找到六个不同类型的工程师:一个硬件工程师设计电路图,一个懂硬件的嵌入式工程师,一个写服务端应用的工程师,一个写Web前端的工程师,以及对应的Android和ios工程师。且不考虑系统本身的协作,要找到这么多的工程师就不是一件容易的事。而如果我们可以只使用一种语言,将大大地改善开发效率、开发人员的难题。4、JavaScript语言下的物联网架构JavaS

6、cript语言在最近几年里特别流行,它流行起来有很多个原因,如:1.使用WebView开发UI效率更高,也因此使得WebView随处可见;2.基于事件驱动的编程模型;3.JavaScript容易上手(这是优点,也是缺点);4.也因此,React、Unity等框架提供了更多的可能性,可以让开发者用JavaScript开发游戏、VR应用等等。那么,只使用JavaScript,我们可以设计出怎样的物联网系统呢?5、基于纯JavaScript的物联网架构如上所述,几年前要想寻找一门能完成一个包含客户端、服务端的系统的语言可谓相当地困难。而随着客户端(浏览

7、器、移动设备)性能的提升、Node.js的出现,这样的语言就浮现了出来,即JavaScript。它不仅可以让我们只用一门语言来降低开发成本,还能实现快速地开发出这样的一个系统。那么,剩下的问题就是,在不同的层级,如何选用合适的框架来实现快速开发。如图3所示,我们可以看到不同层级的可选用JavaScript方案。在此之中,有些纯粹只是为了证明JavaScript是可行的;有一些则可以在开发效率与运行速率上达到最好的平衡。选用这些方案,可以让我们实现更快速的JavaScript物联网应用开发。图3基于纯JavaScript的物联网参考架构6、服务层对

8、于服务层来说,自主开发的物联网服务端,主要采用的是基于node.js的方案。然而,我们发现有越来越多的应用,在使用Serverless的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。