欢迎来到天天文库
浏览记录
ID:21934285
大小:52.50 KB
页数:5页
时间:2018-10-25
《基于restful挖泥船信息管理云平台的构建》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于Restful挖泥船信息管理云平台的构建随着信息技术发展,为适应挖泥船内部深化信息化管理,提高管理水平和工作效率的需要,以Restful技术为基础,构建基于Restful服务的挖泥船信息管理云平台,为工作人员提供便利的信息化工作平台,工作人员通过平台自由高效地沟通、交互信息、协同工作。1引言随着信息技术的发展,信息化管理越来越深入到每个行业,管理信息化提高行业的管理水平,促进信息的有效流通,能显著提高工作效率。目前,挖泥船规模越来越大,船上业务部门随着规模增大而增多,船上工作人员数量也在增加,并且各个部门职位也越来越细化,为了提高挖泥船日
2、常业务管理水平,我们构建挖泥船信息管理云平台,为工作人员提供便利的信息化工作平台,在平台中,工作人员可以自由高效地沟通、交互信息、协同工作。考虑到平台的可扩展性及良好的伸缩性,我们采用开放式的松耦合架构,基于Restful框架来实现解耦合系统设计,提供良好的系统性能。2Restful框架Rest(RepresentationalStateTransfer),也即“表现层状态转化”,其中表现层指资源(Resources)的表现层,资源是X络中的一个实体,或称为X络中的一个具体信息,可以是一张图、一个人、一种服务等,比如在挖泥船信息管理云平台中,
3、一个工作人员是一个实体资源,一个工作任务也是一个资源。每个资源都有一个特定的URI(UniformResourceIdentifier,统一资源标识符)指向它,用户通过URI访问资源。REST指的是一组架构约束条件和原则,满足这些约束条件和原则的应用程序或设计就是RESTful。Rest原则之一是客户端和服务器间的交互是无状态的,也即客户端的每个请求都必须包含能使服务器端为响应该请求所必需的信息,如果服务器在响应期间崩溃重启,客户端不会得到通知,此外请求可以由任何可以服务器响应,非常适合云计算这种分布式部署平台。Rest另一个重要原则是系统分
4、层。系统中的组件模块通过松散耦合方式交互,层次之间有明显的分隔,可以限制整个系统复杂性,促进系统底层的独立性。状态表述转移:在Rest规范中,资源即状态,把整个互联X看成一个庞大的状态机,URI即为资源一个状态表述,每个页面就是一种状态。比如在挖泥船信息管理云平台中,有两个任务A和B,有两个工作人员工号分别1和2,假设1和2都参加了任务A和B,要访问A任务中的1,就用URI:task/A/1,要访问B任务中的2,就用URI:task/B/2。因此,基于Restful框架的云平台天然地具有服务器无状态特征,在状态转移过程中,服务器不需要记录任何
5、Session,所有状态都通过URI的形式记录在客户端。3云平台服务器端体系结构云平台服务器端体基于Restful规范构建,中其它底层服务模块的服务请求,通过BUS接口直接对象方法调用获得服务。图1为云平台基础服务对外提供服务的体系结构。(1)SPI:ServiceProviderInterface,即服务提供者接口,如果把所有的业务都看作“服务”,这个模块就是业务系统的外部接口定义。这些接口的实现能以特定方式提供相同的服务。除了下文提及的Server、RESTclient、Bus实现,SPI的实现也可以是对现有软件系统的适配。例如云平台中即
6、时信息互动系统定义了一套SPI,办公应用中的任务管理系统基于这套SPI与即时信息系统交互。(2)Server:服务器端,整个体系结构里最重要、最核心的组件。只要服务器端完成,就能够对外提供服务。其他组件是为了方便系统之间的集成,核心业务功能最终都是通过服务器端的代码完成。服务器端对外提供httpREST服务。服务器端又分成三层结构:REST资源、内部接口、实体模型。REST资源:REST资源的作用有两个:一是向外提供具体的httpREST服务;二是实现SPI,作为系统集成的最小粒度组件。REST资源依赖内部接口,多个REST资源可能使用同一个
7、内部接口实现。内部接口:业务系统内部模块交互的窗口,业务逻辑在这个层次实现,事务也在这一层次控制。实体模型:实体模型用类表示业务数据模型,隐藏数据的存储结构。(3)RESTClient:用程序实现的http客户端,通过远程访问服务器端的httpRESTurl,实现远程调用业务功能。主要作用是提供一个远程调用的客户端,隐藏httpRESTurl的细节,需要集成该业务系统的程序使用该客户端就不需要知道具体的REST接口定义。RESTclient实现SPI。(4)Bus:业务接口总线。如果业务系统与被调用的业务系统部署在同一个JVM里,使用SPI的
8、服务器端实现而不是RESTClient实现显然会更有效率,因为只需要在JVM里找到相应的组件,不需要发送http请求走X络通信。为了提高部署时的灵活性,使用业务接口
此文档下载收益归作者所有