Kirill Kedrinski - Fotolia

评估 权衡你正在考虑的技术、产品和项目的利弊。

了解如何将SOA应用于物联网

面向服务的物联网架构通过关注功能而不是事件,可以简化调整物联网部署以适应现实世界变化的过程。

设计物联网应用程序的应用程序架构师可能只是在传统的体系结构模型中设置传感器,但如果他们理解面向服务的体系结构如何改变物联网软件功能的视角,那么面向服务的体系结构将给他们带来更大的优势。

传统的以设备为中心的物联网模型是一个开放传感器社区,可在网络上访问,生成事件,一系列影响现实世界元素的开放控制器。应用程序从传感器接收事件并向控制器发送命令。这一切听起来都合乎逻辑,但它存在许多问题。

面向服务的体系结构(SOA因为物联网有细微的不同,它关注的是可以在不同任务中重用的软件功能。在服务模型中,目标是从物联网应用程序应该如何与外部世界交互开始,而不是从传统模型中物联网工作的技术方面开始。例如,一个巨大的车场设施中的车辆定位系统应该定位车辆,而不是读取传感器。然后将车辆位置请求推入硬件。车辆有一个位置,院子里的东西也有一个位置。在硬件确定位置之后,应用程序架构师将关注他们是如何知道它的。在这种情况下,传感器确定这些位置。

物联网服务的设计目的是提供满足需求的功能;在这种情况下,位置。服务的输出——它们的API定义——完成最初的任务,以及由相同信息衍生的相关任务。这些设备本身是不可见的,这给了这个模型更多的好处。

面向物联网的SOA增强了安全性

物联网设备的低成本和简单设置创造了这两者它们的吸引力和缺点。由于需要将设备成本、功耗和复杂性保持在较低水平,因此很难充分保障它们的安全。如果物联网设备在开放网络(包括建筑网络或VPN)上可见,恶意软件或黑客就可以访问它们。

用SOA为物联网虚拟化设备层给物联网应用带来的优势与服务器资源虚拟化给物联网应用带来的优势相同。

有了服务模型,应用架构师根本就不会把物联网设备放到一个开放的网络上;他们把设备放在只有物联网服务才能访问的私有子网上。作为物联网软件本身的一部分,这些服务更容易得到保护。

应用程序架构师可以将任何传统的service- api安全代理和工具应用于服务组件软件。这些服务以一组服务api的形式呈现,为应用程序的其余部分提供控制物联网组件所需的信息或命令接口。这些服务可以简单地表示传感器或控制器将做什么,也可以是复杂的,包含将传感器事件置于上下文中的解释性元素,或者将复杂的控制器命令转换为简单的操作,例如close-gate

SOA消除了应用程序和传感器之间的差异

物联网服务模型的另一个好处是,它将物联网应用程序与不同传感器和控制器工作方式不同的事实隔离开来。例如,来自不同供应商和模型的传感器可以以摄氏度或华氏度或各种消息格式报告温度。物联网应用必须与直接与之对话的传感器或控制器匹配,并在传感器或控制器发生变化时进行更改。一个简单的差异就可能破坏应用程序。这种方法可能导致开发人员所说的脆弱软件。

物联网服务也可以实现协调传感器的工作原理例如,它们是否报告一个条件或条件的更改。一个光传感器可能只能报告它的当前位置(开或关),而另一个传感器可能同时能够报告它的当前位置以及它的位置从开到关的变化。在不重新设计应用程序的情况下,将传感器直接绑定到应用程序逻辑的应用程序中很难适应报告中的这种差异。通过面向物联网的SOA,该服务呈现了传感器和控制器如何工作的和谐视图,因此设备的差异或设备的更改不会影响逻辑。

服务组织和匿名数据

服务结构和共享物联网数据和序列化控制命令。想象一下,一个物联网传感器每分钟或每秒会被十几个不同的应用程序多次查询。它会被负载淹没。服务可以接管传感器接口并分配负载。该服务可以扩展,以便向尽可能多的用户可靠和安全地提供数据。将物联网控制元素转换为服务后,服务可以组织请求,以防止控制器过载或冲突产生不明确的结果。最后,当不需要个人信息时,服务可以匿名化信息。交通分析不需要知道谁在哪里,只需要知道车辆的分布情况。这减少了使用数据时的监管风险。

面向物联网的SOA如何应用于现实世界的配送中心

物联网应用希望传感器和控制器与现实世界的环境相关联。现实世界的变化或传感器和控制器的变化足以破坏以设备为中心的物联网实现。在传统的物联网模型中,如果院子被重组,车辆的位置发生变化,或者传感器的位置发生改变,应用程序中计算位置的一切都将中断。如果只有一个位置服务对应用程序级别可见,那么只需要更改该服务。

例如,一个配送中心可能有一个服务报告一个称为内部运输拥挤的情况,这意味着将货物从仓库运送到包装和运输的卡车或升降机落后于预定时间。要认识到这一点,就意味着要了解6个或更多传感器的输出,以及过去5分钟内环境的趋势。为了解决这个问题,中心可能需要放慢挑选过程或分配额外的卡车,这也可能需要多个控制输出。将此设置为服务可以将应用程序更改为简单地说“如果内部交通拥堵,则激活缓解拥堵”。服务组件将完成其余的工作。

物联网中的服务虚拟化设备层

用SOA虚拟化设备层给物联网应用带来的优势与服务器资源虚拟化给物联网应用带来的优势相同。应用程序是可移植的、可扩展的、有弹性的和安全的。它们可以轻松地适应硬件中的更改、信息模型中的扩展或所需的控制输出,因为所有这些都是在服务中实现并被经过验证的服务或微服务模型中的应用程序引用,该模型已经成为现代应用程序设计中的一个fixture。

深入挖掘物联网api、应用程序和软件

搜索首席信息官

搜索安全

搜索网络

搜索数据中心

搜索数据管理

关闭