当前位置: 首页 > 专利查询>BEA系统公司专利>正文

分布式环境中包括存根模块的系统及处理设备实施的方法技术方案

技术编号:2839445 阅读:263 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种包括其中存储了信息的信息存储媒体的系统,包括:第一组数字信息,包括带有存根模块的Java虚拟机,所述存根模块具有负载平衡软件部分,用于从多个服务提供者选择服务提供者,并且所述存根模块具有故障处理软件部分,用于从标识所述多个服务提供者的列表中去除故障的服务提供者,其中所述带有存根模块的Java虚拟机位于客户机处理设备上;以及其中所述负载平衡软件从所述多个服务提供者的列表中选择具体的服务提供者,以访问由所述客户机使用的服务。(*该技术在2019年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及分布式处理系统,特别涉及分布式处理系统中的计算机软件。
技术介绍
存在若干种类型的分布式处理系统。一般地说,分布式处理系统包括多个处理设备,例如,两个与通信媒体连接的计算机。通信媒体可以包括有线媒体、无线媒体、或它们的组合,例如,以太(Ethernet)局域网或蜂窝网。在分布式处理系统中,至少有一个处理设备可以将通信媒体上的信息传送到另一个处理设备上。图1所示的客户机/服务器结构110是一种类型的分布式处理系统。客户机/服务器结构110包括至少两个处理设备,表示为客户机105和应用程序服务器103。附加的客户机也可以与通信媒体104连接,例如客户机108。通常,服务器103是商用逻辑模块(business logic)的宿主和/或协调事务处理以向另外的处理设备,例如客户机105和/或客户机108提供服务。应用程序服务器103通常用提供服务的软件编程。软件可以利用各种各样的编程模型,例如图1a-b所示的Enterprise Java Bean(“EJB”)100b编程。服务可以包括,例如,检索和传送来自数据库的数据,提供图像和/或解方程。例如,服务器103可以响应来自客户机105的请求,通过通信媒体102从永久性存储器件101中的数据库101a检索数据。然后,应用程序服务器103可以通过通信媒体104传送请求数据到客户机105。客户机是利用来自服务器的服务和可以请求服务的处理设备。用户106经常与客户机105交互操作,并可以使客户机105通过通信媒体104从应用程序服务器103请求服务。客户机经常处理与最终用户的直接交互操作,例如接受请求和显示结果。各种各样不同类型的软件可以用于编程应用程序服务器103和/或客户机105。一种编程语言是Java编程语言。Java应用程序目标代码被装载到Java虚拟机(“JVM”)中。JVM是装载到模拟特定机器或处理设备的处理设备中的程序。关于Java编程语言的更多信息可以从http://www.javasoft.com站点上获取,将这个站点列在这里以供参考。图1b表示若干种Java企业应用编程接口(“API”)100,这些接口允许Java应用代码仍然独立于基本事务处理系统、数据库、和网络基础设施。Java企业API 100包括例如,远程方法调用(“RMI”)100a、EJB 100b、和Java命名和目录接口(JNDI)100c。RMI 100a是经常用在如下所述的对等结构(peer-peer architecture)中的分布式编程模型。具体地说,一组类别和接口使一个Java对象能够调用在不同JVM上运行的另一个Java对象的公开方法。EJB 100b的示例通常用在如上所述的客户机/服务器结构中。EJB 100b的示例是软件成分或可以与其它成分组合的可重用预建的一段封装的应用程序代码。通常,EJB 100b的示例包括商用逻辑单元。存储在服务器103中的EJB 100b示例通常管理永久性、事务处理、并发性、线程处理和安全性。JNDI 100c向Java软件应用程序提供目录和命令功能。客户机/服务器结构110存在着许多缺点。首先,因为服务器103不得不处理许多连接,所以结构110的规模不能太大。换言之,可以附加到服务器103上的客户机的数量受到限制。另外,加倍地添加处理设备(客户机)未必向你提供加倍的性能。其次,难以维护客户机105和108上的应用程序代码。第三,结构110易遭受一些系统故障或单点故障。如果服务器101发生故障并无法备份,那么客户机105将不能获取服务。图1c表示多层结构160。客户机151和152管理与最终用户的直接交互操作,接受请求和显示结果。应用程序服务器153寄存应用程序代码、协调通信、同步和事务处理。数据库服务器154和便携式存储装置155提供数据的持续事务型管理。多层结构160具有与客户机/服务器结构110相似的上述缺点。图2表示对等结构214。处理设备216、217和218与通信媒体213连接。处理设备216、217和218包括通过媒体213通信用的网络软件210a、210b、和210c。通常,在对等结构中的每个处理设备具有相似的处理能力和应用程序。对等程序模型的例子包括Common Object Request Broker Architecture(公用对象请求中介架构)(“CORBA”,)和Distributed Object Component Model(分布式对象组件模型)(“DCOM”)结构。在一个平台特定的分布式处理系统中,各个处理设备可以运行相同的操作系统。这样就允许诸如共享盘、多尾盘(multi-tailed disk)和高速互连之类的专有硬件用于处理设备之间的通信。该特定的分布式处理系统平台的例子包括IBMCorporation′s S/390 Parallel Sysplex、Compaq′s Tandem DivisionHimalaya服务器、Compaq′s Digital Equipment Corporation(DEC)DivisionOpenVMS Cluster软件、和Microsoft Corporation Windows NTClusterServices(Wolfpack)。图2b示出了事务处理(TP)结构220。具体地说,TP结构220示出了BEASystems,Inc.TUXEDO结构。TP监视器224分别通过通信媒体280、281和282与处理设备ATM 221、PC 222和TP监视器223连接。ATM 221可以是自动出纳机,PC 222可以是个人计算机,和TP监视器223可以是另一个事务处理监视器。TP监视器224通过通信媒体283、284和285与后台服务器225、226和227连接。服务器225通过通信媒体286与永久性存储装置287、存储数据库289连接。TP监视器224包括工作流控制器224a,工作流控制器224a用于将来自诸如ATM 221、PC 222、或TP监视器223的处理设备的服务请求择径(routing)到诸如服务器225、226和227的各种服务器。工作流控制器224a允许做到(1)服务器之间的工作负载平衡,(2)受限制的规模可伸缩性或允许附加的服务器和/或客户机,(3)冗余后台服务器的容错性(或服务请求可以由工作流控制器发送到没有故障的服务器),和(4)会话集中以限制同时连接到后台服务器的数量。其它事务处理结构的例子包括IBMCorporation′s CICS、Compaq′s Tandem Division Pathway/Ford/TS、Compaq′s DEC ACMS、和Transarc Corporation′s Encina。TP结构220也存在着许多缺点。首先,单个处理设备或TP监视器224的故障可以使网络变成不能工作。其次,规模可伸缩性或与TP监视器224连接的处理设备(服务器和客户机两者)的数量可能受TP监视器224的硬件或软件的限制。第三,将客户机请求择径到服务器的灵活性受到限制。例如,如果通信媒体280不能工作,但通信媒体290可以使用,那么,ATM 221通常不可以通过通信媒体290直接从本文档来自技高网...

【技术保护点】
一种包括其中存储了信息的信息存储媒体的系统,包括:    第一组数字信息,包括带有存根模块的Java虚拟机,所述存根模块具有负载平衡软件部分,用于从多个服务提供者选择服务提供者,并且所述存根模块具有故障处理软件部分,用于从标识所述多个服务提供者的列表中去除故障的服务提供者,其中所述带有存根模块的Java虚拟机位于客户机处理设备上;以及    其中所述负载平衡软件从所述多个服务提供者的列表中选择具体的服务提供者,以访问由所述客户机使用的服务。

【技术特征摘要】
US 1998-11-5 60/107,167;US 1999-9-23 09/405,2601.一种包括其中存储了信息的信息存储媒体的系统,包括第一组数字信息,包括带有存根模块的Java虚拟机,所述存根模块具有负载平衡软件部分,用于从多个服务提供者选择服务提供者,并且所述存根模块具有故障处理软件部分,用于从标识所述多个服务提供者的列表中去除故障的服务提供者,其中所述带有存根模块的Java虚拟机位于客户机处理设备上;以及其中所述负载平衡软件从所述多个服务提供者的列表中选择具体的服务提供者,以访问由所述客户机使用的服务。2.按照权利要求1所述的系统,其中如果不仅存在关于具体服务提供者的亲缘关系,而且所述具体服务提供者提供所请求的服务,则所述存根模块选择该服务提供者,以及其中当该具体服务提供者,或与该服务提供者相关联的服务器,当前正在参与该服务提供者或服务器与所述客户机处理设备之间的事务时,存在关于该具体服务提供者的亲缘关系。3.按照权利要求1所述的系统,其中所述负载平衡软件部分以循环的方式从所述多个服务提供者的列表中选择服务提供者。4.按照权利要求1所述的系统,其中所述负载平衡软件部分基于各个服务提供者的负载,从所述服务提供者的列表中选择服务提供者。5.按照权利要求1所述的系统,其中所述负载平衡软件部分基于所请求的数据类型,从所述服务提供者的列表中选择服务提供者。6.一种处理设备实施的方法,包括步骤提供第一组数字信息,所述第一组数字信息包括带有存根模块的Java虚拟机,所述存根模块具有负载平衡软件部分,用于从多个服务提供者选择服务提供者,并且所述存根模块具有故障处理软件部分,用于从标识所述多个服务提供者的列表中去除故障的服务提供者,其中所述带有存根模块的Java虚拟机位于客户机处理设备上;以及其中通过所述负载平衡软件,从所述多个服务提供者的列表中选择具体的服务提供者,以访问由所述客户机使用的服务。7.按照权利要求6所述的处理设备实施的方法,其中如果不仅存在关于具体服务提供者的亲缘关系,而且所述具体服务提供者提供所请求的服务,则所述存根模块选择该服务提供者,以及其中当该具体服务提供者,或与该服务提供者相关联的服务器,当前正在参与该服务提供者或服务器与所述客户机处理设备之间的事务时,存在关于该具体服务提供者的亲缘关系。8.按照权利要求6所述的处理设备实施的方法,其中所述负载平衡软件部分以循环的方式从所述多个服务提供者的列表中选择服务提供者。9.按照权利要求6所述的处理设备实施的方法,其中所述负载平衡软件部分基于各个服务提供者的负载,从所述服务提供者的列表中选择服务提供者。10.按照权利要求6所述的处理设备实施的方法,其中所述负载平衡软件部分基于所请求的数据类型,从所述服务提供者的列表中选择服务提供者。11.一种包括其中存储了信息的信息存储媒体的系统,包括第一组数字信息,包括带有存根模块的...

【专利技术属性】
技术研发人员:迪安B雅各布斯埃里克M哈尔彭
申请(专利权)人:BEA系统公司
类型:发明
国别省市:US[美国]

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

1