基于中间件的网络服务方法技术

技术编号:12100891 阅读:111 留言:0更新日期:2015-09-23 18:56
本发明专利技术提供的基于中间件的网络服务方法,包括启动网络服务组件;监听模块侦听来自网络的连接请求并向业务处理池的业务列表中增加待处理业务;由业务处理池内空闲的业务处理线程检查任务列表并处理新任务;由服务传递模块从待传递任务列表取出待传递任务请求并将生成的服务返回数据放入中间件服务的队列;接收服务返回数据,由中间件服务的应用服务程序处理完成后,由网络服务组件的接收模块执行指令或生成新数据接收任务发送到业务处理列表中;由业务处理线程从业务处理列表中获取新数据接收任务时并生成网络数据包返回应用客户。本发明专利技术可供任何使用标准SOAP协议的网络客户对中间件进行访问,丰富了访问方式,给使用带来极大的便利。

【技术实现步骤摘要】

本专利技术涉及信息系统,具体地,涉及一种。
技术介绍
随着计算机技术的不断发展,企业的信息系统不断进步,简单的客户机/服务器系统与单机结构已经不能满足企业应用的需求,企业应用向着三层及多层体系结构的分布式环境发展。分布式系统中不难出现不同的软硬件平台,要在这些异构平台上开发和运行应用软件,就需要一种基于标准的、独立于计算机系统及硬件的开发和运行环境。中间件技术正是提供这样环境的技术。中间件处于三层架构的中间一层,为上层应用软件提供下层硬件和操作系统支撑,并且屏蔽底层硬件和系统差异,使得上层应用可以基于中间件在不同的硬件系统平台无差异地开发及运行。客户机/服务器的访问方式仍然是中间件系统基本的访问方式,虽然随着计算机技术的发展,也出现了很多网络中间件如Sun J2EE、WebLogic、Microsoft.Net等,但这些网络中间件都是重新建立一套网络架构,其应用程序也是基于网络架构而编写,而事实上客户机/服务器模式的中间件已经得到了很好的应用,要在这些已有的场景中添加网络服务支持,就要重新架构和编写应用程序,必然大大增加了工程负担,甚至于重复工作。因此,一种不影响原有中间件环境,不需要额外的开发工作,复用原有的中间件应用程序,使中间件按需要提供网络服务的设计方案就有了诞生的必要。针对现有技术进行搜索发现下面公开的技术方案申请(专利)号:200610024440.6,名称:基于中间件平台提供网络服务的方法。该专利文献公开了一种基于中间件平台提供网络服务的方法,该方法包括网络服务器在CAR中间件平台上启动CAR网络服务代理程序,通过该程序解析SOAP请求的数据包或WSDL文件的下载请求的数据包,并通过CAR中间件平台完成SOAP请求或WSDL文件的下载请求的服务。通过该方法复用原有CAR中间件平台中的已有软件产品,使互联网上的远程客户可通过标准网络服务协议访问CAR中间件平台上注册为命名服务的构件对象,以实现其它支持网络服务开发的开发工具对CAR构件的复用。技术要点比较:1.该方案中,基于CAR (Component Assembly Runtime)中间件平台,通过在平台运行网络服务代理程序以提供网络服务。在接收到网络请求时依次创建HTTP数据包读写实例、命名服务代理模块实例、WSDL生成模块实例、编码/解码实例、SOAP包读写模块实例等,一次访问过程需要经历大量实例创建、销毁过程,效率会受影响。本专利技术方案中,各模块预先初始化,提高响应效率。2.该方案中,所有中间件服务都对网络开放,即网络客户可以对所有中间件的服务进行访问,这其实是不安全的。而本专利技术方案中通过配置只开放需要的服务而隐藏不应被网络客户访问的服务,提高安全性。3.该方案中,通过创建多实例的方式来响应多个请求,而本专利技术方案采用业务处理池来实现并发。4.该方案中,WSDL文件请求处理过程中生成,服务基于中间件的服务,参数基于元数据,在服务较多时,生成过程较长,响应较慢。本专利技术方案WSDL文件完全依赖元数据,可预先生成,响应请求只要读取文件即可。相关检索结果2:申请(专利)号:200810104714.1,名称:一种C/S和B/S混合架构模式实现方法和平台。该专利文献公开了一种C/S和B/S混合架构模式实现方法和平台,基于web服务技术和AJAX技术分别为C/S和B/S模式下不同的客户端提供统一的服务器实现,C/S模式客户端基于SOAP协议访问服务,B/S模式富客户端基于AJAX技术访问服务,采用了面向服务的设计思想,使得C/S模式客户端和B/S模式富客户端可以共享同一个服务器实现。对于来自C/S客户端或者B/S模式富客户端的大量的重复请求就可以避免重复的数据库访问,从而有助于降低请求的平均响应时间。为不同模式客户端提供统一的服务器实现,从而改善软件系统的可维护性、可扩展性和可伸缩性。技术要点比较:1.该方案中,B/S模式基于AJAX技术形成富客户端,而C/S与B/S分别调用服务端的相应接口,再由相应的Web服务接口与AJAX服务接口去调用统一服务接口,将客户端与网络的请求转到统一的服务去处理。对C/S和B/S的请求建立了两套不同的处理方案,服务端基于面向服务的网络架构。本专利技术方案基于中间件,添加网络服务支持,但并不影响原来的平台及架构。2.该方案中,因为混合调用,在调用统一服务接口时先查询是否存在相同参数的服务结果,如果有则直接取结果返回。没有则调用服务逻辑,更新服务结果。这种设计是为避免相同服务逻辑的重复调用。本专利技术方案中客户端和网络的调用完全是独立的。
技术实现思路
针对现有技术中的缺陷,本专利技术的目的是提供一种。本专利技术基于中间件,提出一种组件式设计方案,通过该组件,复用中间件现有的应用服务程序,将网络请求转到对应的中间件服务程序中进行处理,通过请求数据的转换,使中间件不必进行额外的开发就能同时处理来自中间件客户端和网络客户的访问请求。本专利技术针对中间件单一的客户端访问方式,通过网络服务组件式设计,在复用原有中间件平台及服务的前提下,提供网络访问支持。本专利技术只需通过配置的方式而无需进行复杂的应用开发,复用原有的中间件平台及服务,使得来自客户端的和网络的服务请求得到相应的服务响应和处理。根据本专利技术提供的,包括如下步骤:步骤1:启动网络服务组件,初始化服务传递模块、业务处理池、监听模块和消息响应模块;步骤2:监听模块侦听来自网络客户的连接请求并根据连接请求向业务处理池的业务列表中增加待处理业务;步骤3:由业务处理池内空闲的业务处理线程不断检查任务列表并处理增加的待处理任务,当待处理任务处理完成后,新建相应的待传递任务请求,并添加到待传递任务列表;步骤4:由服务传递模块从待传递任务列表取出待传递任务请求并向中间件平台注册客户端编号,后将待传递任务中相应的服务请求数据放入相应的中间件服务队列;步骤5:由中间件应用服务程序处理服务请求数据完成后,将处理结果返回给网络服务组件接收队列,由网络服务组件的接收模块根据处理结果执行指令或生成新数据接收任务发送到业务处理列表中;步骤6:由业务处理池中的空闲业务处理线程从业务处理列表中获取新数据接收任务并生成网络数据包返回网络客户。优选地,所述步骤I包括如下步骤:步骤1.1:网络服务组件读取在中间件系统中作为独立模块运行时需要的配置参数;...
<a href="http://www.xjishu.com/zhuanli/62/CN104935619.html" title="基于中间件的网络服务方法原文来自X技术">基于中间件的网络服务方法</a>

【技术保护点】
一种基于中间件的网络服务方法,其特征在于,包括如下步骤:步骤1:启动网络服务组件,初始化服务传递模块、业务处理池、监听模块和消息响应模块;步骤2:监听模块侦听来自网络客户的连接请求并根据连接请求向业务处理池的业务列表中增加待处理业务;步骤3:由业务处理池内空闲的业务处理线程不断检查任务列表并处理增加的待处理任务,当待处理任务处理完成后,新建相应的待传递任务请求,并添加到待传递任务列表;步骤4:由服务传递模块从待传递任务列表取出待传递任务请求并向中间件平台注册客户端编号,后将待传递任务中相应的服务请求数据放入相应的中间件服务队列;步骤5:由中间件应用服务程序处理服务请求数据完成后,将处理结果返回给网络服务组件接收队列,由网络服务组件的接收模块根据处理结果执行指令或生成新数据接收任务发送到业务处理列表中;步骤6:由业务处理池中的空闲业务处理线程从业务处理列表中获取新数据接收任务并生成网络数据包返回网络客户。

【技术特征摘要】

【专利技术属性】
技术研发人员:荣凯
申请(专利权)人:上海宝信软件股份有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1