应用服务器与Web服务器的动态链接系统和方法

文档序号:7626515阅读:150来源:国知局
专利名称:应用服务器与Web服务器的动态链接系统和方法
技术领域
本发明涉及应用程序分发系统,更具体地,涉及在应用程序分发系统中内容服务器到一个或多个应用服务器或应用服务器集群的链接。
背景技术
在互联网和之后的万维网(“the Web”)的实现的普及之前,软件发行商一般经由例如计算机磁盘或光盘的存储介质来分发计算机应用程序。最初,这种独立的计算机应用程序包括下层程序逻辑、数据存储以及可选的用户接口。近来,在互联网和Web已经普及的情况下,认定计算机应用程序专有地经由磁盘介质分发就不合理了。相反,在许多情况下,传统的计算机程序经由互联网被电子分发。但是,更重要地,在许多情况下,计算机应用程序不再作为独立的可执行程序被分发。相反,许多计算机应用程序作为基于浏览器的应用程序被分发,它们可以包括超媒体文档的集合,例如可以在例如web浏览器的超媒体内容浏览器中被看到的网页。
在基于浏览器的应用程序的情况下,用户可以不通过传统的GUI而通过由嵌入在内容浏览器中所显示超媒体文档中的GUI单元提供的GUI与下层程序逻辑交互。传统的标记可以通过使用内容浏览器而被可视呈现。内容浏览器处理嵌入在标记中的显示属性以适当地格式化也包含在标记内的内容。内容浏览器的值得注意的变体包括老式的网络浏览器以及较新的可扩展标记语言(XML)浏览器。不管浏览器的类型如何,所有的传统标记处理器都被预配置成用于分析和解释嵌入在标记中的属性标签。
虽然基于基本浏览器的应用程序满足了简化的计算需要的目的,但是内容服务器/内容浏览器设置单独地不能支持更复杂的逻辑。相反,为了处理更复杂的计算任务,先进的后端逻辑可以与基于前端浏览器的应用程序逻辑集成以提供复合解决方案。最初,后端逻辑包括被配置成用于通过例如公共网关接口(CGI)的网关介质被访问的传统程序化逻辑。但是,因为没有度量(scale)CGI体系结构的能力,所以最近导致了应用服务器和应用服务器集群的增加。
在应用服务器体系结构中,内容服务器可以被静态链接到一个应用服务器或应用服务器集群。复杂的程序化逻辑可位于应用服务器内。应用服务器中一个或多个应用程序部件向内容服务器的要求服务的请求可以通过静态链接被路由到应用服务器。值得注意的是,应用服务器可以管理应用程序部件的操作。此外,在集群的设置中,到应用程序部件的访问可以通过负荷平衡和故障回复方法来支持。这样,复杂的程序化逻辑可以无需牺牲可度量性而被容纳。
在传统的应用服务器设置中,内容服务器路由可以被用来将请求从内容服务器转发到应用服务器。可以被用来使应用服务器与内容服务器关联的路由信息可以被存储在配置文件中以供路由。在这点上,作为一个实例,路由配置可以是被到内容服务器的插件程序读的配置文件,所述内容服务器例如web浏览器、代理服务器或负荷平衡服务器。
这样,内容服务器与应用服务器之间的链接实际上可以是静态的。然而,基于纯拓扑的关联可能脆弱而严格。而且,在拓扑定义本身实际上变为虚拟时,基于静态拓扑的关联不能起作用。最重要地,通过基于拓扑的方法,将需要人工干预以在计算环境中将每一个内容服务器与每一个应用服务器明确地关联起来。人工干预可以满足小的部署,但是大规模的部署需要静态拓扑方法不能承受的很大的可度量性和可用性。

发明内容
本发明解决了现有技术中关于用于链接到应用服务器的内容服务器配置的不足,并提供了用于在应用程序分发系统中将内容服务器动态链接到一个或多个应用服务器的新颖且非显而易见的方法、系统和装置。在这点上,被配置用于内容服务器与多个应用服务器之间的动态链接的应用程序分发系统可以包括内容服务器,例如web服务器;安装应用程序的模块的一个或多个应用服务器;用于内容服务器的路由配置;以及,被编程用于动态修改路由配置以将内容服务器链接到应用服务器的路由配置产生逻辑。该系统还可以包括应用服务器集群,其中,路由配置产生逻辑还可以被编程为用于动态修改路由配置,以将内容服务器链接到该应用服务器集群。
用于将内容服务器动态链接到一个或多个应用服务器的方法可以包括通过将用于由内容服务器来服务的应用程序的主机应用服务器自动编目(catalog),来更新用于内容服务器的路由配置。具体地说,更新步骤可以包括确定用于应用程序部分的每一个主机应用服务器;以及,将所确定的每一个主机应用服务器添加到内容服务器面向的应用服务器列表。此外,确定步骤可以包括确定用于应用程序每一个模块的每一个目标的每一个主机应用服务器。最后,该方法还可以包括将用于由内容服务器服务的应用程序的主机应用服务器集群自动编目。
本发明的优点可以包括使管理员有能力安装应用程序并将环境中的任何内容服务器识别为前端。结果是,系统可以通过动态修改路由配置来调整应用程序请求路由。作为比较,为了确保内容服务器与应用服务器之间的适当消息路由,管理员否则在过去的固定拓扑中就需要人工确定安装应用程序中的模块的每一个应用服务器的位置。
本发明的其它方面部分地将在下面的描述中提出,部分地根据该描述将是显然的,或者可以通过本方面的实施而得知。本发明的方面将通过在所附权利要求中具体指出的单元和组合被实现和得到。要理解的是,上面的大体描述和下面的详细描述都只是示例性和解释性的,不是如权利要求所要求保护那样对本发明的限制。


包含在本说明书中并构成本说明书一部分的附示了本方面的实施例,并与说明书一起用来说明本发明的原理。这里图示的实施例是当前优选的,但是,应该理解,本发明不限于所示的具体设置和手段,其中图1是根据本发明的应用程序分发系统的示意图,其被配置成用于将一个或多个应用服务器或者一个或多个应用服务器集群动态链接到内容服务器;以及图2是图示了用于在图1的应用程序分发系统中将一个或多个应用服务器或者一个或多个应用服务器集群动态链接到内容服务器的过程的流程图。
具体实施例方式
本发明是用于在应用程序分发系统中将一个或多个应用服务器或者一个或多个应用服务器集群动态链接到内容服务器的方法、系统和装置。根据本发明,内容服务器可以配置有可动态修改的路由配置。具体地说,对于新的应用程序,主机应用服务器或者应用服务器集群可以被确定用于应用程序的模块,以产生用于应用程序的路由配置。因此,当应用程序的模块随时间改变时,路由配置也将随时间改变。
在更具体的说明中,图1是根据本发明的应用程序分发系统的示意图,其被配置成用于将一个或多个应用服务器或者一个或多个应用服务器集群动态链接到内容服务器。如图1所示,应用程序分发系统可以包括内容服务器130,其被配置用于在计算机通信网络120上通信耦合到一个或多个内容消费客户端110。内容服务器130可以被配置成用于例如在基本的Web服务器设置的情况下将内容分发到内容消费客户端110,不过内容服务器130可选地可以是负荷平衡服务器或代理服务器。一般地,内容消费客户端110每一个可以包括内容浏览器(未示出),通过其可以使由内容服务器130服务的内容被呈现以显示。
内容服务器130可以支持用户与应用程序的交互。在这点上,应用程序可以包括安装在耦合到内容服务器130的一个或多个应用服务器140内的一个或多个逻辑模块。可选地,应用程序的一个或多个逻辑模块可以安装在应用服务器集群150内,以支持包括负荷平衡和故障回复的更先进的、可度量的体系结构。为了支持对应用程序模块的请求的路由,用于内容服务器130的路由配置170可以指定应用服务器140以及可选的应用服务器集群150间应用程序的模块的各个位置。在本发明的一个方面中,路由配置可以是由内容服务器插件程序读取的配置文件。
重要的是,路由配置产生处理(process)160可以被耦合到内容服务器130。路由配置产生处理160可以被编程用于动态管理路由配置170。具体地说,当由应用服务器140支持的应用程序改变时,路由配置产生处理160可以动态修改路由配置170,以反映用于变化的应用程序中不同模块的新应用服务器140和应用服务器集群150的位置。在路由配置产生处理160的操作的更具体的说明中,图2是图示了用于在应用程序分发系统中将一个或多个应用服务器或者一个或多个应用服务器集群动态链接到内容服务器的过程的流程图。
从块205开始,可以检索在内容服务器上部署的所有应用程序的列表。在块210,列表中的第一应用程序可以被检索,在块215中,已经被部署用于应用程序的模块列表也可以被检索。在块220,列表中的第一模块可以被检索,而在块225,用于所部署模块的目标列表可以被检索。在块230,列表中的第一目标可以被检索。在判断块235,如果目标被确定为驻留在应用服务器集群中,并且在判断块240中如果确定目标还没有为内容服务器而定义,那么在块245目标可以被添加到由内容服务器面对的应用服务器集群列表中。而且,在块250,模块可以被添加到已经被部署用于该应用服务器集群的模块列表中。
相反,如果在判断块235目标被确定为没有驻留在应用服务器集群中,那么在判断块285中可以确定应用服务器是单个应用服务器,还是应用服务器是应用服务器集群的一部分。如果确定出应用服务器是单个应用服务器,那么过程可以进行到块240。否则,如果确定应用服务器是应用服务器集群的一部分,那么过程可以进行到块255。
如果在判断块255目标列表中的其它目标仍旧没有被处理,那么在块260列表中的下一个目标可以被检索,过程可以通过判断块235重复。否则,如果在判断块265中模块列表中的其它模块仍旧没有被处理,那么在块270列表中的下一个模块可以被检索,处理可以通过判断块225重复。否则,如果在判断块270应用程序列表中的其它应用程序仍旧没有被处理,那么在块275列表中的下一个应用程序可以被检索,过程可以通过判断块215重复。否则,过程在块280结束。
本发明可以以硬件、软件或硬件与软件的组合实现。本发明的方法和系统的实现可以在一个计算机系统中以集中的方式实现,或者以其中不同单元散布在几个互连计算机系统上的分布方式实现。适于执行这里所描述方法的任何类型的计算机系统或者其它装置都适于执行这里所描述的功能。
硬件与软件的典型组合可以是具有如下计算机程序的通用的计算机系统,所述程序在被加载和执行时会控制计算机系统从而使其执行这里所描述的方法。本发明还可以嵌入在计算机程序产品中,它包括能够使这里描述的方法实现的所有特征,并且其在被加载到计算机系统中时能够执行这些方法。
在此上下文中的计算机程序或应用程序是指任何语言、代码或符号形式的旨在使具有信息处理能力的系统直接或者在如下两者之一或两者之后执行特定功能的指令集的任何表达a)转换成另一种语言、代码或符号;b)以不同的材料形式再现。重要的是,本发明可以以其它特定的形式实现,而不脱离其精神或本质属性,因此,应该参考下面的权利要求而不是上述说明书来指示本发明的范围。
权利要求
1.一种被配置用于内容服务器与多个应用服务器之间的动态链接的应用程序分发系统,该系统包括内容服务器;安装应用程序的模块的多个应用服务器;用于所述内容服务器的路由配置;以及,被编程用于动态修改所述路由配置以将所述内容服务器链接到所述应用服务器的路由配置产生逻辑。
2.权利要求1的系统,还包括应用服务器集群,其中,所述路由配置产生逻辑还可以被编程用于动态修改所述路由配置,以将所述内容服务器链接到所述应用服务器集群。
3.权利要求1的系统,其中,所述内容服务器是web服务器。
4.权利要求1的系统,其中,所述内容服务器是代理服务器。
5.权利要求1的系统,其中,所述内容服务器是负荷平衡服务器。
6.权利要求1的系统,其中,所述路由配置包括由内容服务器插件程序读取的配置文件。
7.一种用于将内容服务器动态链接到多个应用服务器的方法,该方法包括通过将用于由内容服务器服务的应用程序的主机应用服务器自动编目,来更新用于内容服务器的路由配置的步骤。
8.权利要求7的方法,其中,所述更新步骤包括如下步骤确定用于所述应用程序部分的每一个主机应用服务器;以及,将所述确定的每一个主机应用服务器添加到内容服务器面向的应用服务器列表。
9.权利要求7的方法,其中,所述更新步骤包括如下步骤通过在用于由内容服务器服务的应用程序的所述配置文件主机应用服务器中自动编目来更新由到内容服务器的插件程序读取的配置文件。
10.权利要求8的方法,其中,所述确定步骤包括确定用于所述应用程序每一个模块的每一个目标的每一个主机应用服务器的步骤。
11.权利要求7的方法,还包括将用于由内容服务器服务的所述应用程序的主机应用服务器集群自动编目的步骤。
12.一种在其上存储有用于将内容服务器动态链接到多个应用服务器的计算机程序的机器可读存储器,所述计算机程序包括当由机器执行时使机器进行如下步骤的例行指令集通过将用于由内容服务器服务的应用程序的主机应用服务器自动编目来更新用于内容服务器的路由配置。
13.权利要求12的机器可读存储器,其中,所述更新步骤包括如下步骤确定用于所述应用程序部分的每一个主机应用服务器;以及,将所述确定的每一个主机应用服务器添加到内容服务器面向的应用服务器列表。
14.权利要求12的机器可读存储器,其中,所述更新步骤包括如下步骤通过在用于由内容服务器服务的应用程序的所述配置文件主机应用服务器中自动编目来更新由到内容服务器的插件程序读取的配置文件。
15.权利要求13的机器可读存储器,其中,所述确定步骤包括确定用于所述应用程序每一个模块的每一个目标的每一个主机应用服务器的步骤。
16.权利要求12的机器可读存储器,还包括将用于由内容服务器服务的所述应用程序的主机应用服务器集群自动编目的步骤。
全文摘要
用于将内容服务器动态链接到一个或多个应用服务器的方法、系统和装置可以包括通过将用于由内容服务器服务的应用程序的主机应用服务器自动编目,来更新用于内容服务器的路由配置。具体地说,更新步骤可以包括确定用于应用程序部分的每一个主机应用服务器;以及,将所确定的每一个主机应用服务器添加到内容服务器面向的应用服务器列表。此外,确定步骤可以包括确定用于应用程序每一个模块的每一个目标的每一个主机应用服务器。最后,该方法还可以包括将用于由内容服务器服务的应用程序的主机应用服务器集群自动编目。
文档编号H04L12/00GK1767538SQ200510116019
公开日2006年5月3日 申请日期2005年10月25日 优先权日2004年10月26日
发明者斯蒂芬·M.·枫蒂斯, 雷根·桑达拉拉曼, 利·A.·威廉森 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1