CN101395582A - 在网格环境中部署平台相关应用的方法、系统和程序产品 - Google Patents
在网格环境中部署平台相关应用的方法、系统和程序产品 Download PDFInfo
- Publication number
- CN101395582A CN101395582A CN200780007260.XA CN200780007260A CN101395582A CN 101395582 A CN101395582 A CN 101395582A CN 200780007260 A CN200780007260 A CN 200780007260A CN 101395582 A CN101395582 A CN 101395582A
- Authority
- CN
- China
- Prior art keywords
- platform
- platform dependent
- application
- grid environment
- rmi
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5055—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
- G06F9/548—Object oriented; Remote method invocation [RMI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5017—Task decomposition
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
在本发明下,确定用于将平台相关应用部署在网格环境中的其特定的“本地”平台上的充足资源是否存在。如果否,则所述应用的平台相关部分被标识,以及所述应用被拆分成平台相关部分和平台独立部分。此后,所述平台相关部分被部署在其相应的本地平台上,同时所述平台独立部分基于可用资源被部署在网格环境中的另一平台上。所述两个部分之间的互连接着可以被自动生成。这可以包括例如创建远程方法调用门面接口,创建使能远程方法调用的门面类,以及建立用于所述第一平台的远程方法调用服务器。
Description
技术领域
一般而言,本发明涉及应用部署。具体地,本发明涉及一种用于在网格环境中部署平台相关应用的方法、系统和程序产品。
背景技术
本申请在某些方面中涉及于2003年11月20日提交的、共同转让的已出版美国申请No.US2003000718419,题目为:“COMPUTERIZEDSYSTEM,METHOD AND PROGRAM PRODUCT FOR MANAGINGAN ENTERPRISE STORAGE SYSTEM”。
当今的通用web服务体系结构在单一基础设施内提供多种服务。具有共同需求的企业也集合到一起以便共享基础设施和业务过程。该方案的优点在于,每个涉及方仅支付所涉及的整个费用的一部分。上述的美国已出版专利申请公开了存储网格体系结构,其通过“网格化”通用基础设施内的存储单元来优化存储使用。当选择文件共享位置时,这类结构不仅提供冗余,而且考虑了基于性能的参数,诸如存储性能、用户需求等。
随着共享基础设施而出现的一个问题涉及平台相关应用的部署。网格环境通常需要应用能够在任意平台下运行,以便为网络组件提供最佳负载均衡。同样地,纯Java(Java和所有基于Java的商标是Sun Microsystems公司在美国、其它国家、或者二者中的商标)应用由于其所宣告的平台独立性的原因,是用于在网格环境中运行的良好候选。不过,某些重要的Java应用不得不将平台独立的代码与平台相关/特定的本地(native)调用相混合。因此,这样的应用被认为是平台相关的,并且仅可以运行在与其本地代码相兼容的平台上。在网格环境中运行平台相关的Java应用代表了附加的挑战,因为所述应用强加了对于目标平台的选择上的局限性。
考虑到前述内容,存在克服上述缺陷的需要。
发明内容
一般而言,本发明的实施例提供了一种在网格环境中部署平台相关应用的方法、系统和程序产品。具体而言,首先确定用于将平台相关应用部署在网格环境中的其特定的“本地”平台上的充足资源是否存在。如果否,则所述应用的平台相关部分被标识,以及所述应用被拆分成平台相关部分和平台独立部分。此后,所述平台相关部分被部署在其相应的本地平台上,同时所述平台独立部分基于可用资源被部署在网格环境中的另一平台上。所述两个部分之间的互连接着可以被自动生成。这可以包括例如创建远程方法调用门面(facade)接口,创建使能了远程方法调用的门面类,以及建立用于所述第一平台的远程方法调用服务器。
本发明的第一方面提供了一种用于在网格环境中部署平台相关应用的方法,包括:标识所述平台相关应用的平台相关部分;将所述平台相关应用拆分成平台相关部分和平台独立部分;把所述平台相关部分部署在第一平台上,以及把所述平台独立部分部署在所述网格环境中的第二平台上;以及生成所述平台相关部分和所述平台独立部分之间的互连。
本发明的第二方面提供了一种用于在网格环境中部署平台相关应用的系统,包括:用于确定在所述网格环境的第一平台上运行所述平台相关应用的可用资源的系统;用于标识所述平台相关应用的平台相关部分的系统;用于将所述平台相关应用拆分成平台相关部分和平台独立部分的系统;用于把所述平台相关部分部署在第一平台上,以及把所述平台独立部分部署在所述网格环境中的第二平台上的系统;以及用于生成所述平台相关部分和所述平台独立部分之间的互连的系统。
本发明的第三方面提供了一种存储在计算机可用媒体上用于在网格环境中部署平台相关应用的程序产品,所述计算机可用媒体包括用于使得计算机系统执行以下步骤的程序代码:确定在所述网格环境的第一平台上运行所述平台相关应用的可用资源;标识所述平台相关应用的平台相关部分;将所述平台相关应用拆分成平台相关部分和平台独立部分;把所述平台相关部分部署在第一平台上,以及把所述平台独立部分部署在所述网格环境中的第二平台上;以及生成所述平台相关部分和所述平台独立部分之间的互连。
本发明的第四方面提供了一种用于在网格环境中部署平台相关应用的方法,包括:提供计算机基础设施,其可操作用于:标识所述平台相关应用的平台相关部分;将所述平台相关应用拆分成平台相关部分和平台独立部分;把所述平台相关部分部署在第一平台上,以及把所述平台独立部分部署在所述网格环境中的第二平台上;以及生成所述平台相关部分和所述平台独立部分之间的互连。
本发明的第五方面提供了一种以传播信号实现的用于在网格环境中部署平台相关应用的计算机软件,所述计算机软件包括用于使得计算机系统执行以下步骤的指令:提供计算机基础设施,其可操作用于:标识所述平台相关应用的平台相关部分;将所述平台相关应用拆分成平台相关部分和平台独立部分;把所述平台相关部分部署在第一平台上,以及把所述平台独立部分部署在所述网格环境中的第二平台上;以及生成所述平台相关部分和所述平台独立部分之间的互连。
附图说明
将仅通过示例并参考附图来描述本发明的优选实施例,在附图中:
图1描述了根据相关技术的网格环境。
图2描述了根据本发明优选实施例的用于确定用于应用的可用资源的作业调度器。
图3描述了根据本发明优选实施例的平台相关应用的通用视图。
图4描述了根据本发明优选实施例的、被修改之后的图3的平台相关应用的通用视图。
图5描述了根据本发明优选实施例的更具体的计算机化实现。
附图不必非要成比例。附图仅是示意性表示,而不是意在描绘本发明实施例的特定参数。在附图中,相同标号表示相同单元。
具体实施方式
现在参考图1,示出了网格环境10。一般而言,网格环境10允许用户(诸如用户12)将文件或类似物存储在由管理服务18所管理的一个或多个数据中心或者“存储单元”14A-B中。就此,网格环境10典型地在网络上实现,所述网络诸如因特网、局域网(LAN)、广域网(WAN)、虚拟专用网(VPN)等。同样地,在图1中所示的各种组件之间的通信可以在客户端-服务器或者服务器-服务器环境中经由直接硬连线连接(例如串行端口)或者经由可利用有线线路和/或无线传输方法的任意组合的可寻址连接来发生。所述组件可以利用传统的网络连通性,诸如令牌环、以太网、WiFi、或者其它传统通信标准。此外,连通性可以由传统的基于TCP/IP套接字的协议来提供。在此例中,所述组件可以利用因特网服务供应商来建立连通性。应该理解,图1中示出的体系结构意在仅作为示意,而如本领域技术人员来说显而易见地,可以实现其它变体。例如,任意数量的数据中心14A-B可以被提供。
无论如何,在典型实施例中,用户12将通过经由在他/她的计算机系统16(例如个人计算机、工作站、膝上型计算机、手持设备等)上的应用生成请求来存储文件。一旦做出了请求,管理服务18将确定用于存储文件的最优或适当的数据中心14A-B。此确定可以基于某些预定的性能参数而做出。例如,可以基于用户身份、存储成本、特定用户需求、理想的单元利用模式/均衡、安全性需求、存储单元可用性、冗余需求、以及网络优化需求来做出确定。由此,如果一个文件需要由一组用户访问,则该文件可以被存储在对于所有这些用户(而不仅是请求存储的用户)最为中央的数据中心14A-B中。此外,如果某个数据中心14A-B接近其容量,则文件可能被存储在另一个(虽然较远的)数据中心14A-B,从而数据中心14A-B的负载可以保持均衡。
如图2所示,在现有的网格系统中,作业调度器20在应用级进行操作(即,用于调度应用22在特定节点上运行,其中,应用需要在该节点上获取所有所需资源)。作业调度器20典型地将使得应用执行延迟,直到所需资源诸如在目标“本地”平台(例如,运行WIN32的节点1、运行LINUX的节点2等等)上可用。
不过,如上所述,许多应用(诸如应用22)在某种程度上是平台相关的。在网格环境中,当资源是有限的时候,这可能成为问题。在这样的情形中,应用22可以被修改以便使能在任何可用平台上运行其平台独立部分,与此同时平台相关部分(本地部分)在所需平台上运行,从而在该平台上消耗最少的资源。
参考图3,平台相关应用22在其本地平台30上的部署被描述。特别地,图3描述了整个Java应用22在平台30上的部署。图3中还示出了Java虚拟机(JVM)32、本地库34A-B、门面(facade)36、JNI层38。如上所述,用于将应用22整个部署到其本地平台30的资源有时候存在短缺。
为了解决此问题,可以根据图4实现一种技术。作业调度器20(图2)将首先确定是否存在用于将应用22部署到其本地平台30的充足资源。在此示意性示例中,假定不存在充足资源,则应用22的平台相关部分22A将被标识。所述标识可以通过参考应用22的元数据而做出。无论如何,应用22将被拆分成平台相关部分22A和平台独立部分22B。这可以基于对底层代码的分析从而确定哪些部分依赖于(或者不依赖于)特定平台来完成。一旦所述拆分已发生,则网格作业调度器20将把平台相关部分22A部署在本地平台30上,以及基于可用资源把平台独立部分22B部署在网格环境中的任意其它平台40上。特别地,网格作业调度器20将分析其它平台的资源可用性,以及基于所述资源可用性来部署平台独立部分22B。
此外,在平台相关部分22A与平台独立部分22B之间的互连可以被自动生成。这可以包括以下步骤:(1)创建远程门面接口42。每个门面方法(其最初被用于访问本地方法)需要成为远程Java接口的方法。此需求来自于远程地访问方法的需要。远程Java接口需要扩展标准的java.rmi.Remote接口。该应用将使用这些远程的Java接口来访问相应的本地方法。(2)创建使能RMI的门面类。所有现有的专用门面类需要被实现为使能RMI的,并且实现相应的远程Java接口。如果不是所有的门面方法被包括在专用类中,则新的使能RMI的类需要被创建,以实现相应的远程门面Java接口。(3)建立Java RMI服务器44。为了提供对门面类的实例的远程访问,Java RMI服务器44需要被建立,并被部署在本地平台上。Java RMI服务器44将在出现请求时创建远程门面类的实例,将它们注册到本地RMI注册表中,以及将远程Java接口返回到调用者。
如可见的,通过将平台相关代码从应用的其余部分中分离出来并使其可以远程访问,Java应用代码成为平台独立的。本地对象库运行在其本地平台中,并且它们经由远程访问API被访问。如进一步示出的,本发明的典型实施例利用远程方法调用(RMI),但是应该理解,可以利用其它等价物。
现在参考图5,示出了本发明优选实施例的计算机化实现100的更详细的图。如所述,实现100包括部署在计算机基础设施102内的计算机系统104。这意在阐述本发明的实施例可以被实现在网络环境(例如因特网、广域网(WAN)、局域网(LAN)、虚拟专用网(VPN)等)内或者独立计算机系统上。在前者的情形中,在整个网络中的通信可以经由多种类型的通信链路的任意组合来发生。例如,通信链路可以包括可利用有线和/或无线传输方法的任意组合的可寻址连接。当经由因特网发生通信时,连通性可以由传统的基于TCP/IP套接字的协议来提供,并且因特网服务供应商可以被用于建立到因特网的连通性。此外,计算机基础设施102意在阐述实现100的某些或所有组件可以由服务供应商进行部署、管理、服务等,所述服务供应商在网格环境中部署应用。
如所示,计算机系统104包括处理单元106、存储器108、总线110、输入/输出(I/O)接口112。此外,计算机系统104被示出为与外部I/O设备/资源114和存储系统116进行通信。一般而言,处理单元106执行计算机程序代码,诸如应用部署系统120,其被存储在存储器108和/或存储系统116中。当执行计算机程序代码时,处理单元106可以向/从存储器108、存储系统116、和/或I/O接口112写和/或读数据。总线110提供计算机系统104中的各个组件之间的通信链路。外部设备114可以包括任意设备(例如,键盘、点击设备、显示器等),其使用户能够与计算机系统104和/或任意设备(例如网卡、调制解调器等)相交互,所述任意设备使计算机系统104能够与一个或多个其它计算机设备进行通信。
计算机基础设施102仅示意了用于实现本发明实施例的各种类型的计算机基础设施。例如,在一实施例中,计算机基础设施102包括在网络上进行通信以便执行本发明实施例中的各个过程步骤的两个或更多计算设备(例如服务器群集)。而且,计算机系统104仅表示了可包括多种硬件组合的多种可能的计算机系统。就此,在其它实施例中,计算机系统104可以包括:包括用于执行特定功能的硬件和/或计算机程序代码的任意专用的计算制品、包括专用和通用硬件/软件的组合的任意计算制品等等。在每种情形中,程序代码和硬件可以分别使用标准编程和工程技术来创建。另外,处理单元106可以包括单个处理单元,或者被分布于一个或多个位置中的一个或多个处理单元中,例如在客户机和服务器上。类似地,存储器108和/或存储系统116可以包括驻留于一个或多个物理位置上的各种类型的数据存储和/或传输媒体的任意组合。另外,I/O接口112可以包括用于与一个或多个外部设备114交换信息的任意系统。此外,应该理解,未在图5中示出的一个或多个附加组件(例如系统软件、数学协处理单元等等)可被包括在计算机系统104中。但是,如果计算机系统104包括手持设备或类似物,则应该理解,一个或多个外部设备114(例如显示器)和/或存储系统116可被包含在计算机系统104之内,而非如图所示出那样是外部的。
存储系统116可以是能够为本发明实施例中的信息、应用、元数据等提供存储的任意类型的系统(例如数据库)。就此,存储系统116可以包括诸如磁盘驱动器或光盘驱动器之类的一个或多个存储设备。在另一实施例中,存储系统116包括例如分布于局域网(LAN)、广域网(WAN)或存储区域网(SAN)(未示出)的数据。虽然没有示出,但是附加组件可以被并入计算机系统104中,诸如高速缓冲存储器、通信系统、系统软件等。
在计算机系统104的存储器108中示出的是应用部署系统120(作为软件程序),其将用于提供本发明实施例的功能,并且其包括:资源确定系统122、部分标识系统124、应用拆分系统126、部分部署系统128、以及互连系统130。这些系统执行以上概述的功能。特别地,资源确定系统122将确定是否存在用于将应用22部署在其本地平台上的充足资源。如果否,则部分标识系统124将标识应用20的平台相关部分22A。此后,应用拆分系统126将把应用22拆分成平台相关部分22A和平台独立部分22B。一旦以此方式被拆分,则部分部署系统128将把平台相关部分22A部署在其相应的本地平台30上,以及基于资源可用性把平台独立部分部署在网格环境140中的另一平台40上。一旦部分22A-B被部署,互连系统130将自动生成部分22A-B之间的互连。如上所述,这可以包括以下步骤:(1)创建远程门面接口;(2)创建使能RMI的门面类;以及(3)建立Java RMI服务器。应该理解,应用部署系统120的某些或全部系统可以被实现为作业调度器20(图2)。
尽管在此被示出和描述为在网格环境中部署应用的方法和系统,但是应该理解:本发明的实施例可以进一步提供可替代方案。例如,一个实施例提供:包括用于使计算机基础设施能够在网格环境中部署应用的计算机程序代码的计算机可读/可用媒体。就此,所述计算机可读/可用媒体包括实现本发明实施例的各个过程步骤的每个步骤的程序代码。应该理解,术语计算机可读媒体或计算机可用媒体包括一种或多种任意类型的、程序代码的物理实施例。具体而言,计算机可读/可用媒体可以包括:在一个或多个便携式存储制品(例如光盘、磁盘、磁带等)上、在计算设备(诸如存储器108(图5)和/或存储系统116(图5),例如,固定磁盘、只读存储器、随机存取存储器、高速缓冲存储器等)的一个或多个数据存储部分上、和/或作为(例如在程序代码的有线/无线的电分布的过程期间)在网络上行进的数据信号(例如传播信号)实现的程序代码。
在再一实施例中,提供一种用于在网格环境中部署应用的计算机实现方法。在此情形中,计算机基础设施(诸如计算机基础设施102(图5))可以被提供,并且用于执行过程步骤的一个或多个系统可以被获得(例如被创建、购买、使用、修改等)以及被部署在计算机基础设施上。就此,系统的部署可以包括以下一个或多个:(1)从计算机可读媒体在计算设备(诸如计算机系统104(图5))上安装程序代码;(2)将一个或多个计算设备添加到计算机基础设施;以及(3)并入和/或修改计算机基础设施的一个或多个现有系统,以使计算机基础设施能够执行过程步骤。
如这里所使用的,应该理解,术语“程序代码”和“计算机程序代码”是同义词,并且指的是以任意语言、代码或符号形式的一组指令的任何表达法,所述指令意在使得具有信息处理能力的计算设备直接执行或者在如下一个或两个步骤之后执行特定的功能,所述步骤为:(a)转换为另一种语言、代码或符号;和/或(b)以另一种物质的形式再现。就此,程序代码可以被实现为以下的一个或多个:应用/软件程序、组件软件/功能库、操作系统、用于特定计算和/或I/O设备的基本I/O系统/驱动程序等等。
已经出于说明和描述的目的呈现了本发明的各方面的前述说明。其不是意在穷尽性的或者把本发明限制为所公开的精确形式,并且很显然,许多修改和变型是可能的。对本领域技术人员来说显而易见的是,这些修改和变型意在被包括在由权利要求所限定的本发明的范围之内。
Claims (23)
1.一种用于在网格环境中部署平台相关应用的方法,包括:
标识所述平台相关应用的平台相关部分;
将所述平台相关应用拆分成平台相关部分和平台独立部分;
把所述平台相关部分部署在第一平台上,以及把所述平台独立部分部署在所述网格环境中的第二平台上;以及
生成所述平台相关部分和所述平台独立部分之间的互连。
2.根据权利要求1所述的方法,其中所述生成包括:自动生成所述互连。
3.根据权利要求1所述的方法,其中所述生成包括:
创建远程方法调用门面接口;
创建使能了远程方法调用的门面类;以及
建立用于所述第一平台的远程方法调用服务器。
4.根据权利要求1所述的方法,其中所述部署由网格作业调度器来执行。
5.根据权利要求1所述的方法,进一步包括:确定用于所述平台相关应用的可用资源,其中如果不存在用于在所述第一平台上运行所述平台相关应用的充足资源,则所述平台相关应用被拆分。
6.根据权利要求1所述的方法,其中所述第一平台专用于所述平台相关部分,以及其中所述第二平台基于所述网格环境中的可用资源被选择。
7.一种用于在网格环境中部署平台相关应用的系统,包括:
用于确定在所述网格环境的第一平台上运行所述平台相关应用的可用资源的系统;
用于标识所述平台相关应用的平台相关部分的系统;
用于将所述平台相关应用拆分成平台相关部分和平台独立部分的系统;
用于把所述平台相关部分部署在第一平台上,以及把所述平台独立部分部署在所述网格环境中的第二平台上的系统;以及
用于生成所述平台相关部分和所述平台独立部分之间的互连的系统。
8.根据权利要求7所述的系统,其中所述用于生成的系统自动生成所述互连。
9.根据权利要求7所述的系统,其中所述用于生成的系统创建远程方法调用门面接口,创建使能了远程方法调用的门面类,以及建立用于所述第一平台的远程方法调用服务器。
10.根据权利要求7所述的系统,其中所述用于部署的系统包括网格作业调度器。
11.根据权利要求7所述的系统,其中如果所述用于确定的系统确定不存在用于在所述第一平台上运行所述平台相关应用的充足资源,则所述平台相关应用被拆分。
12.根据权利要求7所述的系统,其中所述第一平台专用于所述平台相关部分,以及其中所述第二平台基于所述网格环境中的可用资源被选择。
13.一种存储在计算机可用媒体上用于在网格环境中部署平台相关应用的程序产品,所述计算机可用媒体包括用于使得计算机系统执行以下步骤的程序代码:
确定在所述网格环境的第一平台上运行所述平台相关应用的可用资源;
标识所述平台相关应用的平台相关部分;
将所述平台相关应用拆分成平台相关部分和平台独立部分;
把所述平台相关部分部署在第一平台上,以及把所述平台独立部分部署在所述网格环境中的第二平台上;以及
生成所述平台相关部分和所述平台独立部分之间的互连。
14.根据权利要求13所述的程序产品,其中所述生成步骤包括:自动生成所述互连。
15.根据权利要求13所述的程序产品,其中所述计算机可用媒体包括用于使得计算机系统执行以下步骤的程序代码:
创建远程方法调用门面接口;
创建使能了远程方法调用的门面类;以及
建立用于所述第一平台的远程方法调用服务器。
16.根据权利要求13所述的程序产品,其中如果所述用于确定的系统确定不存在用于在所述第一平台上运行所述平台相关应用的充足资源,则所述平台相关应用被拆分。
17.根据权利要求13所述的程序产品,其中所述第一平台专用于所述平台相关部分,以及其中所述第二平台基于所述网格环境中的可用资源被选择。
18.一种用于在网格环境中部署平台相关应用的方法,包括:
提供计算机基础设施,其可操作用于:
标识所述平台相关应用的平台相关部分;
将所述平台相关应用拆分成平台相关部分和平台独立部分;
把所述平台相关部分部署在第一平台上,以及把所述平台独立部分部署在所述网格环境中的第二平台上;以及
生成所述平台相关部分和所述平台独立部分之间的互连。
19.根据权利要求18所述的方法,其中所述计算机基础设施可进一步操作用于:自动生成所述互连。
20.根据权利要求18所述的方法,其中所述计算机基础设施可进一步操作用于:
创建远程方法调用门面接口;
创建使能了远程方法调用的门面类;以及
建立用于所述第一平台的远程方法调用服务器。
21.根据权利要求18所述的方法,其中所述计算机基础设施包括网格作业调度器,用于部署所述平台相关部分和所述平台独立部分。
22.根据权利要求18所述的方法,其中所述计算机基础设施可进一步操作用于:确定用于所述平台相关应用的可用资源,其中如果不存在用于在所述第一平台上运行所述平台相关应用的充足资源,则所述应用被拆分。
23.根据权利要求18所述的方法,其中所述第一平台专用于所述平台相关部分,以及其中所述第二平台基于所述网格环境中的可用资源被选择。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/365,373 US8117611B2 (en) | 2006-03-01 | 2006-03-01 | Method, system, and program product for deploying a platform dependent application in a grid environment |
US11/365,373 | 2006-03-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101395582A true CN101395582A (zh) | 2009-03-25 |
Family
ID=38042493
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200780007260.XA Pending CN101395582A (zh) | 2006-03-01 | 2007-02-26 | 在网格环境中部署平台相关应用的方法、系统和程序产品 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8117611B2 (zh) |
EP (1) | EP1989622A1 (zh) |
JP (1) | JP5078916B2 (zh) |
CN (1) | CN101395582A (zh) |
CA (1) | CA2637749C (zh) |
TW (1) | TW200809634A (zh) |
WO (1) | WO2007099073A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102147750A (zh) * | 2011-01-27 | 2011-08-10 | 中国农业银行股份有限公司 | 作业处理方法和系统 |
CN106254408A (zh) * | 2015-06-12 | 2016-12-21 | 财团法人工业技术研究院 | 移动边缘计算的控制方法、网络系统与服务平台 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2449534A1 (en) * | 2003-11-14 | 2005-05-14 | Ibm Canada Limited - Ibm Canada Limitee | On-demand software module deployment |
DE102006051188A1 (de) * | 2006-10-30 | 2008-05-08 | Siemens Ag | Flexibles Verschaltungssystem |
JP4523965B2 (ja) * | 2007-11-30 | 2010-08-11 | 株式会社日立製作所 | リソース割当方法、リソース割当プログラム、および、運用管理装置 |
US8813048B2 (en) * | 2009-05-11 | 2014-08-19 | Accenture Global Services Limited | Single code set applications executing in a multiple platform system |
US8601449B2 (en) * | 2010-04-15 | 2013-12-03 | Itr Group, Inc. | Cross-platform application framework |
US8713183B2 (en) | 2011-03-27 | 2014-04-29 | Hewlett-Packard Development Company, L.P. | Resource compatability for data centers |
US9239714B2 (en) * | 2012-08-17 | 2016-01-19 | Business Objects Software | Rapid deployment of software applications |
JP6300477B2 (ja) | 2012-09-20 | 2018-03-28 | 花王株式会社 | 皮膚又は毛髪用洗浄剤組成物 |
JP6235843B2 (ja) | 2012-09-20 | 2017-11-22 | 花王株式会社 | 皮膚又は毛髪用洗浄剤組成物 |
US10579354B2 (en) * | 2015-03-10 | 2020-03-03 | Kordata, Llc | Method and system for rapid deployment and execution of customized functionality across multiple distinct platforms |
TWI581588B (zh) * | 2015-06-12 | 2017-05-01 | 財團法人工業技術研究院 | 行動邊緣計算之控制方法、網路系統與服務平台 |
US9971610B2 (en) | 2016-06-20 | 2018-05-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributed application execution based on device-specific support for platform-independent device functions |
US10761827B2 (en) * | 2016-11-30 | 2020-09-01 | Vmware, Inc. | WIN32 software distribution architecture |
US11340913B2 (en) * | 2019-03-28 | 2022-05-24 | Jpmorgan Chase Bank, N.A. | Systems and methods for implementing model-based application control frameworks |
US11726823B2 (en) * | 2020-02-06 | 2023-08-15 | Samsung Electronics Co., Ltd. | Electronic device having heterogeneous processors and method of processing task using the heterogeneous processors |
Family Cites Families (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2100540A1 (en) * | 1992-10-19 | 1994-04-20 | Jonel George | System and method for performing resource reconfiguration in a computer system |
US5548724A (en) * | 1993-03-22 | 1996-08-20 | Hitachi, Ltd. | File server system and file access control method of the same |
CA2168762C (en) | 1993-08-03 | 2000-06-27 | Paul Butterworth | Flexible multi-platform partitioning for computer applications |
US5491810A (en) * | 1994-03-01 | 1996-02-13 | International Business Machines Corporation | Method and system for automated data storage system space allocation utilizing prioritized data set parameters |
US5812780A (en) * | 1996-05-24 | 1998-09-22 | Microsoft Corporation | Method, system, and product for assessing a server application performance |
US6011918A (en) * | 1998-04-22 | 2000-01-04 | International Business Machines Corporation | Methods, systems and computer program products for generating client/server applications |
US6058416A (en) * | 1998-05-22 | 2000-05-02 | International Business Machines Corportion | Flexible state sharing and consistency mechanism for interactive applications |
US6247109B1 (en) * | 1998-06-10 | 2001-06-12 | Compaq Computer Corp. | Dynamically assigning CPUs to different partitions each having an operation system instance in a shared memory space |
US6983463B1 (en) * | 1998-10-02 | 2006-01-03 | Microsoft Corporation | Network independent profiling of applications for automatic partitioning and distribution in a distributed computing environment |
US6532488B1 (en) * | 1999-01-25 | 2003-03-11 | John J. Ciarlante | Method and system for hosting applications |
US6275863B1 (en) * | 1999-01-25 | 2001-08-14 | International Business Machines Corp. | System and method for programming and executing long running transactions |
US6341314B1 (en) * | 1999-03-30 | 2002-01-22 | International Business Machines Corporation | Web-based virtual computing machine |
US6597956B1 (en) * | 1999-08-23 | 2003-07-22 | Terraspring, Inc. | Method and apparatus for controlling an extensible computing system |
US6587938B1 (en) * | 1999-09-28 | 2003-07-01 | International Business Machines Corporation | Method, system and program products for managing central processing unit resources of a computing environment |
US6917963B1 (en) * | 1999-10-05 | 2005-07-12 | Veritas Operating Corporation | Snapshot image for the application state of unshareable and shareable data |
JP2001159525A (ja) * | 1999-11-30 | 2001-06-12 | Mitsubishi Electric Corp | ナビゲーション装置および記録媒体 |
GB9928503D0 (en) * | 1999-12-03 | 2000-02-02 | Ibm | Resource allocation in data processing systems |
US6597366B1 (en) * | 2000-01-14 | 2003-07-22 | International Business Machines Corporation | Transparent general purpose object isolation for multi-tier distributed object environments |
US7146233B2 (en) * | 2000-02-11 | 2006-12-05 | Sun Microsystems, Inc. | Request queue management |
US7778981B2 (en) * | 2000-12-01 | 2010-08-17 | Netapp, Inc. | Policy engine to control the servicing of requests received by a storage server |
US20020087621A1 (en) * | 2000-12-29 | 2002-07-04 | Hendriks Chris L. | Method and system to manage internet user navigation data |
US6985951B2 (en) * | 2001-03-08 | 2006-01-10 | International Business Machines Corporation | Inter-partition message passing method, system and program product for managing workload in a partitioned processing environment |
US7065767B2 (en) * | 2001-06-29 | 2006-06-20 | Intel Corporation | Managed hosting server auditing and change tracking |
JP4141665B2 (ja) * | 2001-07-10 | 2008-08-27 | 株式会社日立製作所 | ストレージの運用方法およびこれに用いるストレージおよび遠隔ストレージ |
US20030046357A1 (en) * | 2001-08-30 | 2003-03-06 | International Business Machines Corporation | Intelligent content placement in a distributed computing network |
US7092977B2 (en) * | 2001-08-31 | 2006-08-15 | Arkivio, Inc. | Techniques for storing data based upon storage policies |
US6996587B2 (en) * | 2001-09-27 | 2006-02-07 | Sun Microsystems, Inc. | Method and apparatus for managing data volumes in a distributed computer system |
US6990662B2 (en) * | 2001-10-31 | 2006-01-24 | Hewlett-Packard Development Company, L.P. | Method and system for offloading execution and resources for resource-constrained networked devices |
US7299466B2 (en) * | 2001-12-20 | 2007-11-20 | Cadence Design Systems, Inc. | Mechanism for managing execution environments for aggregated processes |
US20030131136A1 (en) * | 2002-01-04 | 2003-07-10 | Emerson Theodore F. | Method and apparatus for emulating an OS-supported communication device to enable remote debugging |
EP1463991A4 (en) * | 2002-01-11 | 2008-08-06 | Akamai Tech Inc | JAVA APPLICATION FRAMEWORK FOR USE IN A CONTENT NETWORK (CDN) |
US7089299B2 (en) * | 2002-01-15 | 2006-08-08 | International Business Machines Corporation | Distributed application deployment using program characteristics and environment characteristics |
US7206817B2 (en) * | 2002-01-18 | 2007-04-17 | Bea Systems, Inc. | Systems and methods for application management and deployment |
US20030167320A1 (en) * | 2002-02-26 | 2003-09-04 | Sun Microsystems, Inc. | Registration service for registering plug-in applications with a management console |
US6813637B2 (en) * | 2002-03-15 | 2004-11-02 | Sun Microsystems, Inc. | System and method for automatically partitioning an application between a web server and an application server |
US7421490B2 (en) * | 2002-05-06 | 2008-09-02 | Microsoft Corporation | Uniquely identifying a crashed application and its environment |
US7143413B2 (en) * | 2002-05-15 | 2006-11-28 | Hewlett-Packard Development Company, L.P. | Method and system for allocating system resources among applications using weights |
US7162628B2 (en) * | 2002-07-23 | 2007-01-09 | Cisco Technology, Inc. | Method, system, apparatus and program product for temporary personalization of a computer terminal |
US7827283B2 (en) * | 2003-02-19 | 2010-11-02 | International Business Machines Corporation | System for managing and controlling storage access requirements |
US7171470B2 (en) * | 2003-02-20 | 2007-01-30 | International Business Machines Corporation | Grid service scheduling of related services using heuristics |
US20050021316A1 (en) * | 2003-04-23 | 2005-01-27 | Bela Bollobas | Modeling directed scale-free object relationships |
US20050086640A1 (en) * | 2003-10-21 | 2005-04-21 | Mikko Kolehmainen | Initiating execution of application programs on a data processing arrangement |
US7472398B2 (en) * | 2003-11-17 | 2008-12-30 | Hewlett-Packard Development Company, L.P. | Method and system for hosting an application with a facade server |
US7810090B2 (en) * | 2003-12-17 | 2010-10-05 | Sap Ag | Grid compute node software application deployment |
US20050160104A1 (en) * | 2004-01-20 | 2005-07-21 | Datasource, Inc. | System and method for generating and deploying a software application |
US7970902B2 (en) * | 2004-03-19 | 2011-06-28 | Hewlett-Packard Development Company, L.P. | Computing utility policing system and method using entitlement profiles |
US7634755B2 (en) * | 2004-07-13 | 2009-12-15 | International Business Machines Corporation | Application splitting for network edge computing |
JP4281658B2 (ja) * | 2004-09-24 | 2009-06-17 | 日本電気株式会社 | ファイルアクセスサービスシステムとスイッチ装置及びクオータ管理方法並びにプログラム |
US7779410B2 (en) * | 2004-12-17 | 2010-08-17 | Sap Ag | Control interfaces for distributed system applications |
US7581216B2 (en) * | 2005-01-21 | 2009-08-25 | International Business Machines Corporation | Preserving platform independence with native accelerators for performance critical program objects |
US8077718B2 (en) * | 2005-08-12 | 2011-12-13 | Microsoft Corporation | Distributed network management |
-
2006
- 2006-03-01 US US11/365,373 patent/US8117611B2/en active Active
-
2007
- 2007-02-26 TW TW096106519A patent/TW200809634A/zh unknown
- 2007-02-26 JP JP2008556760A patent/JP5078916B2/ja active Active
- 2007-02-26 CN CN200780007260.XA patent/CN101395582A/zh active Pending
- 2007-02-26 CA CA2637749A patent/CA2637749C/en active Active
- 2007-02-26 EP EP07704713A patent/EP1989622A1/en not_active Withdrawn
- 2007-02-26 WO PCT/EP2007/051793 patent/WO2007099073A1/en active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102147750A (zh) * | 2011-01-27 | 2011-08-10 | 中国农业银行股份有限公司 | 作业处理方法和系统 |
CN106254408A (zh) * | 2015-06-12 | 2016-12-21 | 财团法人工业技术研究院 | 移动边缘计算的控制方法、网络系统与服务平台 |
Also Published As
Publication number | Publication date |
---|---|
EP1989622A1 (en) | 2008-11-12 |
US8117611B2 (en) | 2012-02-14 |
US20070209034A1 (en) | 2007-09-06 |
JP5078916B2 (ja) | 2012-11-21 |
TW200809634A (en) | 2008-02-16 |
CA2637749A1 (en) | 2007-09-07 |
WO2007099073A1 (en) | 2007-09-07 |
JP2009528605A (ja) | 2009-08-06 |
CA2637749C (en) | 2014-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101395582A (zh) | 在网格环境中部署平台相关应用的方法、系统和程序产品 | |
CN100418057C (zh) | 用于应用程序分布式管理的启用网格的虚拟机的方法和系统 | |
CN104317610B (zh) | 一种hadoop平台自动安装部署的方法及装置 | |
CN100428168C (zh) | 管理虚拟机的中央处理单元利用的方法及系统 | |
CN102037710B (zh) | 用于远程处理多媒体插件调用的方法和系统 | |
CN100410929C (zh) | 具有可插入体系结构的键值仓库 | |
CN101083603B (zh) | 用于为网络拓扑改变管理信息的方法和系统 | |
US20100066733A1 (en) | System and method for managing virtual world environments based upon existing physical environments | |
CN100487689C (zh) | 用于环球网服务结构中的包容器选择器及其选择方法 | |
CN112070457A (zh) | 项目管理的方法及装置、电子设备、存储介质 | |
US8990771B2 (en) | Building and distributing software packages | |
CA2171818A1 (en) | Method and apparatus for interpreting exceptions in a distributed object system | |
CN105556475A (zh) | 请求处理技术 | |
CN104601622A (zh) | 一种部署集群的方法和系统 | |
CN101946258A (zh) | 基于计算机的业务过程在专用硬件上的基于模型的部署 | |
CN100596139C (zh) | 使用元数据定义映射来构建组件应用程序的系统和方法 | |
CN101571809A (zh) | 一种插件注册的实现方法及其装置 | |
CN110502217B (zh) | 一种基于ros的机器人云平台设计方法 | |
WO2005077070A2 (en) | An apparatus implementing a method for discovering network based distributed applications | |
WO2007130595A2 (en) | Global provisioning of millions of users with deployment units | |
CN105446724A (zh) | 软件参数的管理方法及装置 | |
US20060015849A1 (en) | Application splitting for network edge computing | |
CN113946328A (zh) | 业务处理方法及系统、存储介质和电子设备 | |
US20070261045A1 (en) | Method and system of configuring a directory service for installing software applications | |
EP1584030A2 (en) | Accessing computational grids |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090325 |