首页 理论教育 物联网传感器中间件设计原则

物联网传感器中间件设计原则

时间:2023-11-02 理论教育 版权反馈
【摘要】:在系统中,希望中间件服务于所有通用模块以外的各个部分。随着中间件与Web技术的发展,三层或多层分布式应用体系越来越流行。这些基本元素在组装过程中通过打包来创建Web组件。表示层中所有组件的作用都是系统接口。这一层的构成中还包含一组与RFID相关的业务流程,负责处理那些到达消息总线的消息。本层中的业务流程是消息总线上事件的使用者。

物联网传感器中间件设计原则

在系统中,希望中间件服务于所有通用模块以外的各个部分。系统设计出的中间件是一个有弹性环境,当要加入一个新的标准或者当一个射频识别标准改变了其中的数据格式时,只需修改系统中的相关组件,不必大改整个系统的结构,也不会更改数据库的存储方式,以降低日后系统的维护成本。因此,这里介绍通用的设计方案,以解决目前适应各种不同标准的读写器、标签种类很多的问题,并希望日后能够改良,提供更好的服务给物流系统中的应用以及相关研究人员。

1.系统结构设计

从传统的两层结构到现在的多层结构,软件系统的发展经历了很大的变化。传统的应用系统模式是“主机/终端”或“客户端/服务器”(Client/Server),客户端/服务器系统的结构是指把一个大型计算机应用系统变为多个能够互为独立的子系统,而服务器便是整个应用系统资源的存储与管理中心,多台客户端则各自处理相应的功能,共同实现完整的应用。

随着中间件与Web技术的发展,三层或多层分布式应用体系越来越流行。在这种体系结构中,客户端只存放表示层软件,业务逻辑(包括事务处理、监控、信息排队、Web服务等)采用专门的中间件服务器,后台是数据库、其他应用系统。系统架构的三层或多层分布式体系结构主要包括如下4个层次:表示层、Web层、业务层和企业信息系统层。

(1)表示层

表示层用于与信息系统的用户进行交互以及显示根据特定规则进行计算后的结果。基于J2EE规范的客户端可以是基于Web的,也可以是不基于Web的独立应用系统。若在基于Web的J2EE客户端应用中,用户在客户端启动浏览器后,从Web服务器中下载Web层中的静态HTML页面或由JSP或Servlet(小服务程序)动态生成的网页;若在不基于Web的J2EE客户端应用中,客户端应用程序可以运行在一些基于网络的系统(如手持设备移动产品等)中。同样,这些独立的应用也可以运行在客户端的JavaApplet(小应用程序)中。

(2)Web层

Web层由JSP网页、基于Web的Java Applet以及用于动态生成的网页的Servlet构成。这些基本元素在组装过程中通过打包来创建Web组件。运行在Web层中的Web组件依赖Web容器来支持诸如响应客户请求和查询EJB Enterprise JavaBean组件之类的功能。

(3)业务层

在基于J2EE规范构建的企业信息系统中,将解决或满足特定业务领域商务规则的代码构建成为业务层中的,Java企业柄(Java核心代码,是J2EE的一部分)EJB组件。EJB组件可以完成从客户端应用程序中接收数据、按照商务规则对数据进行处理、将处理结果发送到企业信息系统层进行存储、从存储系统中检索数据以及将数据发送回客户端等功能。部署和运行在业务层中的EJB组件依赖于EJB容器来管理事务、生命周期、状态转换、多线程以及资源存储等。由业务层和Web层构成了多层分布式应用体系结构的中间层。

(4)企业信息系统层

企业信息系统层通常包括企业资源规划(ERP)系统、大型机事务处理系统、关系数据库系统以及其他在构建J2EE分布式应用系统时已有的企业信息管理软件。随着Web的客户端结构的发展,多层分布式体系的应用将会越来越广泛,中间件作为分布式体系应用中的关键技术,以其独特的优势为各种分布式应用的开发注入了强大动力,极大地推动了应用系统集成的发展。

(5)多层应用体系结构特点(www.xing528.com)

在三层结构的逻辑层之间,建立起两级间的映射关系,当其中一层发生改变时,不对系统整体构成影响,这可以降低系统的维护代价。在多层应用体系结构中可以平衡各节点的负载情况下,充分利用网络资源,用户使用标准的浏览器通过互联网和HTTP访问服务方提供的Web服务器,Web服务器分析用户浏览器提出的请求等。如果有数据库查询操作的请求(包括修改、添加记录等),则将这个需求传递给Web服务器和数据库之间的中间件。

2.系统架构

面向服务架构层次划分方法要适合于使用和构建服务,也是采用SOA架构的重要前提。物联网中间件解决方案的架构就是基于这种SOA分层方法的。每一层都有一组明确的功能,而且都利用定义明确的接口与其他层交互。分离组件使应用有了更好的可维护性可扩展性。下面详细介绍解决方案架构中的每一层。

(1)表示层

表示层提供配送中心、供应商门户、零售店门户等3类。表示层中所有组件的作用都是系统接口。这些接口使用户得以向系统发出请求,并提供了这3类的15种功能,其中上下文管理功能单位就是沟通用户间的数据编码规则,以便双方有一致的数据形式,能够使用户间互相认识,以用户阅读的方式整合第三方主管信息系统(EIS)和服务。灵活的导航系统方便使用内容管理功能。可定制的外观和感受可以为不同的用户群体提供不同的信息。

(2)业务流程层

业务流程层囊括了应用对工作流的所有需要。它提供了使业务流程自动化和减少或消除为完成业务流程所需的人工干预的能力。业务流程层协调服务、数据源和人之间的交互,从而实现业务流程自动化。连接RFID解决方案最重要的一个接口就是通过业务流程层实现的。由于RFID解决方案主要是解决集成问题,事件模型和RFID消息总线是该架构的两个关键组件,而且为接入系统的主要接口。RFID消息总线负责将放置在总线上的消息传送给一个或多个感兴趣的接收者。这一层的构成中还包含一组与RFID相关的业务流程,负责处理那些到达消息总线的消息。本层中的业务流程是消息总线上事件的使用者。业务流程层通过意义明确的接口,与服务层和集成层进行通信

(3)服务层

服务层是执行业务逻辑和进行数据处理的地方。它还提供了用于支持企业应用的重要基础架构。服务层最常见的组件是Java企业柄(EJB)和面向Web服务接口的定制控件。控件是较新的Java结构,使用它时,开发者不必了解复杂的J2EE就可以构建业务逻辑。由开发人员构建业务逻辑,由BEAWebLogicWorkshop框架创建适当的J2EE结构(如无状态会话柄、有状态会话柄、实体柄、消息驱动柄等),从而提供希望得到的操作。服务层依赖集成层从不同的外部源获得所需的数据、存储数据和向/从其他相关系统发送/接收信息。

(4)集成层

集成层提供访问RFID应用以外其他企业信息系统的功能,管理系统可通过WebLogic Portal来管理服务提供商接口。访问PIM、ONS和EPCIS可以通过Web服务接口实现。采用适当的方法访问其他系统的方法也有许多,如JCA适配器、数据引擎以及Web服务等。最终的目标是向标准同一且免费的方向发展。因物联网技术较新,很多实用技术和产品正在发展中,目前有效的配制方法是利用适配器,它们使得利用源数据浏览和进行XML转换变得非常轻松。

目前在集成技术方面,Java是常被采用的技术,它的Java消息服务(JMS)提供了一种异步方式与外部系统集成的方法,可以实现系统的多种要求。JMS不仅使系统能够对后端系统进行异步呼叫,同时还可使后端系统也可以在物联网解决方案中发起异步处理。例如,处理传入读写器事件就是由RFID解决方案异步完成的。数据集成是SOA中又一个可以提供服务的领域,用于管理数据的控件可以被展现为提供数据访问功能的服务。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈