用于网格计算系统中的对等作业监视和控制的系统和方法

文档序号:6398376阅读:169来源:国知局
专利名称:用于网格计算系统中的对等作业监视和控制的系统和方法
技术领域
本发明涉及并行处理、批处理和网格计算领域,特别是涉及其中批作业的提交者需要在这些批作业的运行过程中与之交互的应用。所公开的实施方式提供了在作业的发起者和处理这些作业的客户系统之间的改进了的通信和反馈,从而该提交者能够接收关于作业的进展情况的实时反馈,并发送实时命令以改变所述作业的进一步运行。本发明特别面向其中批作业的提交者需要在这些批作业的运行过程中与之交互的应用。
商标IBM是位于美国纽约阿蒙克(Armonk)的国际商业机器公司的注册商标。其他名称可能是国际商业机器公司或其他公司的注册商标或产品名称。
背景技术
批处理和并行处理系统已经存在了多年。这些系统通常可用于提交需要处理的单个作业、多个相互独立的作业、或者可能构成一个更大的作业的子步骤的一组相关的作业。IBM的LoadLeveler是这种系统的一个实例,而网格计算(Grid Computing)则是建立在LoadLeveler所提供的功能之上的一个新领域,它以灵活性和安全性扩展了LoadLeveler,以便用于更多样的环境中。并行处理系统的一个典型实现允许多个客户系统中的每个客户系统提交多个作业步,以在一个客户系统池中分配,从而进行处理。这通常是通过这样的方法完成的,即让一中央服务器接受所有这种请求,并将它们排列优先次序和分配给一个客户系统池以进行处理。中央服务器负责这些客户系统之间的工作负荷平衡,向客户系统发送启动和维持作业所需命令,以及监视活动和向提交者通知状态,例如在每个客户系统上作业步的完成。
在这些典型应用中,一旦一作业步在一客户系统中被启动以进行处理,则所有通信必须流经中央服务器,并且在该作业步完成以前,很少有作业步与提交者之间的通信或者从作业步到提交者的结果反馈。这起因于若干实际的限制。由于中央服务器可能在同时为很多提交者处理很多作业步,并且中央服务器通常是未为一特定应用定制的一通用服务器,所以中央服务器没有能力实时地处理每个处理客户系统上的每个作业步的特定操作和要求。

发明内容
在所公开的本发明中,如在现有技术中一样,如先前用于批作业的发派和管理的中央服务器保持未变。然而,本发明的优选实施例提供了作业的发起者和处理这些作业的客户系统之间的改进的通信和反馈,因而提交者能够接收关于作业的进展情况的实时反馈,并发送实时命令以改变所述作业的进一步运行。根据本发明的优选实施例,批作业应用的提交者应用允许在批作业的执行期间与之交互。在本发明中,在每个提交者的系统和处理一作业步的每个批客户系统上添加软件层。这些附加的软件层利用管线(pipeline)和通信协议(如TCP/IP套接字),使得提交者的系统与各个处理客户系统上的每个作业步之间直接通信。这些附加的软件层是在作业提交者应用的控制之下,并可在必要时进行修改以支持提交者的工作负荷的特定需要,而无需修改中央批管理器。这些附加的软件层利用提交者的系统和每个批处理客户系统之间的对等通信,允许提交者的客户系统和每个处理客户系统之间的直接通信,而无需使用通过中央批管理器的通信通道。
在以下的详细描述中说明了这些和其他改进。为了更好地理解本发明及其优点和特点,请参阅该描述及附图。


图1示出了一中央服务器与皆可被认为是该中央服务器的客户系统的诸提交系统和诸处理系统之间的连接。
图2示出了提交系统和处理客户系统之间的直接对等连接。
图3示出了添加到提交和处理客户系统之上以使能直接通信的软件层(独立的进程线程)。
图4示出了用于提交一多步作业的未经修改的作业控制文件。
图5示出了一作业控制文件,该作业控制文件经过了修改以插入用于一多步作业的每一步的附加通信进程的调用。
图6示出了一典型的主用户界面窗口。
图7示出了用于显示一单个作业步的进展情况的更多细节的一用户界面子窗口。
图8示出了一警告窗口,该窗口立即通知提交者一失败的作业步。
图9示出了一警告窗口,该窗口通知提交者所有作业步的完成,并提供其结果的概要。
以下详细描述通过参照附图例举的方式,解释了本发明的优选实施例及其优点和特点。
具体实施例方式
图1示出了用于把来自多个提交者的工作负荷分配给多个客户系统以进行处理的一典型系统。通常有一个中央服务器1,所有请求都向该服务器发出,并且所有客户系统从该服务器接收请求以进行处理。客户系统常常能够是提交者或处理者,并且可能从一种角色切换到另一种角色,或者甚至同时既担当提交者,也担当处理者。对于所示的实例,客户系统2、3和4将起提交者的作用,而客户系统5、6、7、8和9将提供处理服务。诸客户系统使用由链路10、11、12、13、14、15、16和17构成的所示通信结构与中央服务器1进行通信。这些通信链路由提交者2、3和4用于发出处理服务的请求,由中央服务器1用于将处理请求发派给客户系统5、6、7、8和9,并由中央服务器用于监视所有客户系统的状态和进展情况。中央服务器1也可以提供某些反馈给提交客户系统2、3和4,例如通知处理完成和最终结果的返回,如果它们未通过另一种机制例如一共享文件存储系统返回的话。在本发明中,该通信结构保持未变,并继续承担这些职能,并且中央服务器1继续承担在诸客户系统之间的工作负荷平衡的重要职能。
图2示出了由本发明所提出的、用于在诸客户系统之间通信的附加通信路径(这些通信路径是对图1中的路径的附加,但为清楚起见被单独显示出来)。这些通信路径是由客户系统建立的,而没有图1所示的中央服务器1的参与。对于所示的实例,将假定客户系统2已发出了一处理服务请求,并且该请求已由服务器1指定将在客户系统5和6上执行。将进一步假定,客户系统3已发出了一处理服务请求,并且该请求已由服务器1指定将在客户系统7和8上执行。将进一步假定客户系统4已发出了一处理服务请求,并且该请求已由服务器1指定在客户系统9上执行。
当所述诸请求被分配以进行处理时,图2所示的通信路径将由诸客户系统建立。如图所示,将在客户系统2和5之间建立通信路径18和19。如图所示,将在客户系统2和6之间建立通信路径20和21类似地,相应于前面描述的作业步分配,如图所示,将在其余的提交客户系统和处理客户系统之间建立通信路径22、23、24、25、26和27。
图3更详细地示出了位于该图上部的提交客户系统2与位于该图下部的处理客户系统5和6之间的通信。该图显示了各个软件进程线程,它们共同提供了作为本发明的主题的诸通信服务。为提交一多步批作业,客户系统2向批服务器1提交一请求。该请求可以采取如图4所示的控制文件的形式。这种控制文件在现有技术的系统中是常见的。该实例控制文件指定了一个需要两个处理客户系统的两步作业,但也可以指定任何数量的作业步。一般预期将有两个处理客户系统并行地(同时地)处理这两个实例步。行1到11是第一个作业步的控制信息和参数,而行12到22是第二个作业步的控制信息和参数。
为完成本发明所设想的监视和控制,修改由客户系统2向批服务器1发出的请求,以使得诸处理客户系统在实际的批作业步之前启动一监视进程。这是通过如图5所示修改图4的控制文件而完成的。该文件在行6和17针对这两个作业步进行了修改,其中为了说明的目的,修改部分以黑体字突出显示。在该控制文件的这些行中所指定的参数分别指定了将在处理客户系统5和6上运行的作业。该更改指示客户系统5运行监视进程“llsim”,而该行的其余部分包含了该程序的参数。这些参数包括1)该监视进程的名称46,在这里为“llsim”,这是一个必须在处理客户系统上存在的程序。
2)该提交者的系统(客户系统2)的网络名称(主机名)47,在本实例中假设为client2.com。
3)将被用于从批作业步接收通信的、该提交者的系统(客户系统2)上的端口号48,在本实例中为本实施例的优选的TCP/IP端口49163。
4)一可选的私有密钥49,处理客户系统使用该密钥来验证其对该提交者的系统的访问以获得接受,在本实例中显示为key0。该密钥可由各种方法产生,包括随机产生,其中每个新的作业提交使用一个不同的密钥。该密钥由中央主机1传送给处理客户系统5和6,并用于回过来访问该提交客户系统2。这保证了提交客户系统2只从它所发起的那些作业接受输入。
5)诸初始参数,在本实例中开始于“psim”(该批作业步的程序名称),接着是该程序的诸参数。
如图5所示的所需修改将在把该请求提交给中央服务器1之前,在客户系统2上进行。
为了开始作业提交过程,客户系统2上的提交者调用程序,该程序将准备好接受来自诸处理客户系统(在本实例中,这些客户系统将是客户系统5和6,但该提交者此时还不知道这些客户系统的身份)的通信,并将把修改后的作业请求提交给中央服务器1以进行处理。在本发明中,该提交者调用程序“llsim”,并提供图4所示的控制文件的名称作为参数。程序“llsim”,其为将成为处理客户系统上的监视进程的同一程序,能够确定它是正运行在一提交者的系统(本实例中的客户系统2),还是正运行在一处理客户系统中(本实例中的客户系统5或6)上,并采取适合于其运行环境的操作。它是通过检查提供给该程序的参数来进行这种确定的。其他实施方式可以在提交者的系统和处理客户系统上使用不同的程序。
当由客户系统2上的提交者启动后,监视程序“llsim”执行以下步骤,并启动图3所示的诸进程1)该程序准备一个表,该表将容纳它将创建的所有子进程的进程ID,以便当主进程终止的时候,它可以终止所有的所述进程,从而避免留下任何死进程运行。每个子进程当其在以下步骤中被创建时将被送入该表。该程序也钩入(hook into)“kill”、“quit”或类似的事件,以便每当主程序结束时终止该表中的诸进程。
2)该程序通过检查程序参数,确定其正运行在提交者的系统上,并遵循提交者的系统的路径。
3)该程序(初始进程28)派生(fork)一子进程29,于是该父进程退出。子进程作为新的主进程而进行接管(该步骤是可选的,但在某些操作系统中这使得该进程成为一后台进程,并将用户返回到一命令提示符)。新创建的进程29将处理所有与用户的交互。
4)用户界面进程29搜索一空闲的通信端口,并打开所选择的端口以侦听来自连接子进程30和通信子进程31、32以及可能被创建的任何其他通信子进程的连接。在图3中所打开的端口是用户界面进程29上的39。如果所优选的端口正在使用中(如果该程序的另一个实例正在运行,则有可能),则选择另一个端口,而用户界面窗口的背景颜色将改变,以将该实例与其他实例区分开。
5)然后用户界面进程29派生一子进程30,以用于接受来自诸批处理机器的连接,于是每个进程将继续其自身的执行路径。这两个进程(相互独立的进程线程)在通信链路39上建立它们之间的连接,这可能需要使用一密钥,该密钥是在创建诸子进程之前产生的,并作为派生进程的一部分与每个新的子进程共享,以便通信能够被接受。
6)一旦建立了通信链路39,则用户界面进程29准备与用户通信,以接收命令和显示结果。在本优选实施例中,该界面由一图形用户界面构成,但也可以利用其他方法。该进程既能够接收来自该图形界面的用户输入,也能够接收来自TCP/IP连接的数据,而这些ICP/IP连接是来自于也运行在该提交者的系统上的其他进程的。当该图形用户界面退出时,客户系统2上的所有子进程将被杀死,于是在提交者的系统2上的该监视进程将完成。这可能发生在处理客户系统5和6上的所有处理步骤完成以前或以后。如果提早终止,则并不重新建立与处理客户系统的连接。
7)连接进程30打开另一个通信端口,以用于从批客户系统接收连接。这将是一个单独的端口号,其与由用户界面进程29所产生的不同,并将被用于接收来自处理诸客户系统的新连接。该端口在图3中显示在连接进程30的底部(只有一个端口,所显示的两个连接都连接到同一个端口)。
8)现在,连接进程30读取图4所示的批控制文件,如图5所示的那样对其进行修改,并将其提交给中央服务器1以进行处理。所述修改包括插入监视进程的名称(该程序自身的名称,“llsim”)、该进程正运行于其上的主机名(本例中为client2.com)、在前一步骤中打开的通信端口号,并且也可能包括一密钥或类似的安全手段,诸处理客户系统必须呈示该安全手段来获得访问,以便把结果返回给用户界面进程。
9)连接进程30将关于刚提交的作业的所选信息发回给用户界面进程29。所述用户界面进程使用该信息显示已启动的处理步的数量,并针对当提交所述命令文件时返回的作业名称,使得一取消命令被发送给中央服务器1,如果用户想要通过中央服务器取消处理的话。
10)中央服务器1选择诸处理客户系统,并将诸处理步发派给所选择的诸客户系统5和6。
11)连接进程30等待来自一处理客户系统的一新连接。每次收到一个新连接,连接进程30就派生出另一个子进程,以处理该新连接。
12)在每个处理客户系统例如5上,中央服务器1启动在所述控制文件中指定的程序,其在本例中为监视进程“llsim”,该进程在图3中作为进程34而启动。该进程首先通过检查它所收到的参数,来确定其正运行在一处理客户系统上,于是沿着适当的执行路径进行。所采取的第一个步骤是打开在其上与提交客户系统2进行通信的一通信端口。该连接是向主机名和端口号做出的,该主机名和端口号是在图5中先前添加到行6或17中、并在处理客户系统5由中央服务器1启动时作为程序参数提供给监视进程“llsim”的。初始连接是通过通信链路18从响应进程34向连接进程30做出的。根据实施方式,如果在图5的修改中插入了一密钥,则连接进程30可以要求发送该密钥以验证该连接。也可以可选地采取使该连接安全的其他步骤,例如建立加密的链路。
13)到连接进程30的第一个处理客户系统连接造成一个派生,导致创建通信进程31。下一个连接导致创建通信进程32,并且如果还有其他处理步骤,则为每个步骤创建其他类似的通信进程。连接进程30的存在只是为了接受新的连接,并启动这些新的通信进程。此外,对于创建的每个通信进程,由连接进程30通过通信链路39向用户界面进程29发回一个唯一的标识(在本优选实施例中为新创建的进程ID)。该标识将被用于来自通信进程31、32等的每个未来通信,以便确定消息来源于哪个处理客户系统,从而把它们归属于正确的处理客户系统。
14)随着连接进程30中的派生,来自响应进程34的通信跟随到子进程(通信进程),并且来自处理客户系统5的所有未来通信都将由通信进程31接收。通信链路18在响应进程34和通信进程31之间将保持打开和连接,直到在处理客户系统5上的批作业步35完成为止。
15)此时,响应进程34向通信进程31发送一个初始自我标识消息,该消息将被转发并显示给用户,作为初始联系消息。当通信进程31收到该消息时,它将其通过通信链路44(该链路是当它从连接进程30中被派生出时所继承的、链路39的一个副本—显示为39、44和45的连接到用户界面进程29内同一个接收端口的链路)转发。为了用户界面29可以确定该消息来自于哪个客户系统,通信进程31在该消息上附加了它的标识(本优选实施例中为进程ID),并且可能还被要求包括继承自进程30的一密钥,如果它已由进程29和30建立的话。由通信进程31转发给用户界面29的所有未来消息也将附加这同一标识。用户界面进程29显示接收到的消息,该消息被归属于由该标识所标识的一特定的处理客户系统步。
16)然后,通信进程31向响应进程34发送标识它自己和它的用户界面进程所需要的信息。这些信息可以包括提交客户系统2的标识例如其主机名或密钥,这些以后将被用于在来自用户界面29的命令由命令进程33接受和处理之前验证这些命令。该信息被用于防止处理客户系统5接受来自原始提交者之外的任何客户系统的命令。响应进程34保存该信息,以便当命令进程33被创建时,将信息传送给该进程。
17)通信进程31将从响应进程34接收到的任何消息转发给用户界面进程29。如果通信链路从处理客户系统端关闭,则通信进程31将其往回报告给用户界面进程29,该用户界面进程29使用该信息通知用户该处理步骤已完成。这种通信链路中断的检测使得用户能够得到处理步骤已完成的通知,即使没有从处理客户系统收到具有这个意思的消息(如果在处理客户系统上的作业失败,这可能是一个有用的指示)。
18)响应进程34使用其剩余的参数(当去除了在提交给中央服务器1之前由连接进程30添加并显示在图5中的信息之后)来启动原来在图4中指定为处理步的作业。启动该作业的过程在以下的几个步骤中作了描述。
19)响应进程34启动批作业35,其输入(通常为STDIN)和输出(通常为STDOUT)连接到一双向管道(接受双向通信的管道),因而该批作业的输入和输出通过该管道被引导到该响应进程34。在图3中该双向管道的输入被表示为链路40,而输出被表示为链路41。
20)因为一个进程不容易处理来自两个来源(通过通信链路19的用户界面进程29,以及通过管道41的批作业35的输出)的输入,所以响应进程34派生一个单独的命令进程33,以处理一个通信路径。
21)命令进程33打开一新的通信端口,通过该通信端口接收来自用户界面进程29的命令。然后命令进程33在先前建立的通信链路18上通过通信进程31和链路44,将描述该新端口的联系信息发送给用户界面进程29(当命令进程33从响应进程34被派生时,它继承了链路18连接的一个副本,并只使用该连接一次,以便在它开始通过通信链路19侦听来自用户界面进程29的输入之前,发送该联系信息)。从命令进程33发送的该联系信息包括该处理客户系统的主机名、连接端口号,以及将被用于验证在链路19上接收到的命令的可选的密钥。如果用户选择向正在处理客户系统5上执行的作业步35发送命令,则用户界面29将使用该信息。用户界面进程29可以只当必须发送命令时才完成连接19,并且可以在发送完每个命令之后关闭该连接,而当必须发送另一个命令时再次打开连接。用户界面进程29和命令进程33也可以可选地选择对链路19上的通信进行加密。命令进程33将处理通过通信链路19而来自用户的命令,并将它们通过管道连接40转发到批作业35。
22)响应进程34处理通过管道连接41接收到的来自批作业35的输出,并将该输出通过通信链路18转发到通信进程31。
23)响应进程34将侦测何时批进程35已完成并已关闭了所述管道连接。当这发生的时候,响应进程34将终止命令进程33,并然后终止自己,而这将被通信进程31和中央服务器1二者视为该批作业步的完成。
24)为每个作业步重复步骤12到23,从而为每个作业步创建唯一的诸进程。通信进程32、命令进程36、响应进程37、和批作业38(连同与链路40和41相应的链路42和43)表示为一第二作业步创建的诸进程。其他作业步将创建其他类似的诸进程(未示出)。
用户界面进程29将提供适当的用户界面,以便允许提交者和每个作业步之间的双向交互,以监视和控制所述步。该界面可以由多个图形用户界面窗口构成,这些窗口的形式类似于图6、7、8和9所示的形式。
图6示出了由用户界面进程29所显示的主监视进程窗口的一种可能实现形式。该界面包括一取消按钮50,它是所提供的唯一与中央服务器1通信的功能。该按钮提供了利用中央服务器1所提供的用于该目的一命令来取消所有作业处理步骤的手段。所有其余的用户界面控件是通过在提交客户系统2和处理客户系统5与6之间(或在提交客户系统3和处理客户系统7与8之间等等)的直接对等连接(通信链路18、19、20、21、22、23、24、25、26和27)而被提供和被服务的。
图6中的主用户界面包括一命令文本输入窗口51,用户使用该窗口输入命令,该命令将通过一通信链路例如19或21发送给一命令进程例如33或36,然后从所述命令进程,该命令将通过管道连接例如40或42,被转发给批作业35或38。当按下“发送给所有”按钮52时,该命令将被发送给所有活动的作业步35和38,以及任何和所有其它步,或者,当按下与一单个作业步相应的发送按钮59时,该命令将被发送给一单个作业步。
图6中的主用户界面也显示与每个作业步相应的一行状态。所显示的信息可以包括处理客户系统名称54、正在该客户系统上执行的该作业步名称55、来自该作业步的最后一个消息的时间56、来自该作业步的最后一个消息57(从该作业步接收到的最后一行输出,该输出通过管道连接41或43、响应进程34或37、通信链路18或20、通信进程31或32、通信链路44或45,到达用户界面进程29,并在此显示出来)和连接或完成状态的当前概要60。
此外,图6中的每个作业步包括一个按钮58,该按钮允许显示该作业步的附加信息。按下该按钮将使得用户界面进程29打开一附加窗口。图7显出了该附加窗口的一个可能实施方式。
图7中的作业详情窗口包括一命令文本输入窗口61和一相应的发送按钮62。它们完成与主用户界面中的命令窗口51和发送按钮59同样的向该作业步发送一命令的功能。该作业详情窗口的主要功能是提供对来自作业步64的所有输出的完整显示,而不是在主用户界面中显示的最近的一行57。
用户界面进程29可以具有为该特定应用定制的一些附加功能。这些附加功能可能是在整个作业步完成以前,当该作业步的中间结果被返回时,识别它们并作出反应。这种定制的功能可能包括识别和报告成功或失败或其它特征,以及一旦得知时就为用户保持状态更新。某些条件可能导致通过一附加的显示窗口和警告声音例如图8所示的作业失败指示窗口,而对用户立即警告,或者可能导致一些自动操作,例如作为由其他一些作业步所报告的条件的结果,向某些作业步发送命令。当所有作业步完成时,用户界面进程29可以打开一附加信息窗口,并发出一警告声音,以通知用户作业完成。图9示出了这种窗口的一个实例。
主用户界面窗口具有一“退出”按钮53,该按钮关闭所有窗口(例如图6、7、8和9所示的那些窗口),关闭所有子进程,例如提交客户系统2上的30、31和32,并最终终止用户界面进程29,从而结束提交客户系统2上的所有监视功能。子窗口(例如在图7、8和9中显示的那些窗口)具有关闭按钮,例如63、65和66,这些按钮只关闭其所属的子窗口,而不会终止任何进程,或关闭任何其他窗口。
退出提交客户系统2上的主界面窗口和进程不会终止运行在一处理客户系统5或6或类似处理客户系统上的任何进程,然而如果发生了这种退出,则命令和响应进程,其中包括33、34、36和37,将不再能够与提交客户系统2进行通信。命令和响应进程33、34、36和37应当容许到提交客户系统2的通信链路的中断,并允许批作业步进程35和38继续进行到完成,而不向提交客户系统2返回其他的输出。
可以看到,所公开的计算系统和应用提供了一解决方案,其用于在网格和批计算系统中的改进的作业监视和控制。在大多数网格计算系统中,一中央管理器,其通常为一单个服务器,接收来自很多提交者的请求,并将它们排列优先顺序和在很多处理客户系统上启动处理。在这种传统方法中,中央服务器管理与多个提交者的系统和运行在诸客户系统上的多个作业的所有通信,包括将命令传递给诸客户系统,以及将结果传回到提交者。通过一中央服务器实现的这种通信的集中必然限制可能通信的范围和广度,特别是有关在各个客户系统上的批进程的进展情况的详细状态的通信,这种通信如果不加限制可能会以过多的通信流量使中央服务器超负荷。使用所公开的方法,中央批管理器只负责工作负荷平衡和作业的启动和完成;所有其他的命令和状态信息都是在正处理着其各自工作负荷的多个提交者的系统和多个客户系统之间直接通信的。对于有很大数量的处理客户系统向一个提交客户系统报告的应用来说,这种增加的反馈量可能是不合适的,因为这种反馈同样可能使该提交客户系统超负荷,但是对于需要即时的反馈以便进行监视、调试和进程修改的情形,该方法提供了比通过通常的以服务器为中心的分布式处理系统所可能获得的更多的控制。所公开的实施方式利用提交者的系统和客户系统之间的、事件驱动的对等通信,使得可以传递更详细的状态和控制信息,而不使中央服务器超负荷,并且通过避免轮询,还提供了更即时的结果反馈。所公开的系统利用了在提交者的系统和客户系统二者之上的多个进程线程,并且提供了一个用户界面,以便对提交者合并和显示结果,并允许将命令发送到正在客户批处理系统上运行的进程。
尽管前面描述了本发明的优选实施例,但应理解,无论现在还是未来的、本领域的技术人员都可以进行落入附后的权利要求的范围的各种改进和提高。这些权利要求应当被理解为维护了对前面描述的本发明的适当保护。
权利要求
1.一种计算机系统,包括一中央服务器(1)和一提交者应用,它们与一应用进程一起,被利用来提供对一个批或网格计算系统的全面控制,以接收和发派请求,所述应用进程同时性地允许正在处理所发派的请求的客户系统将通信直接往回传递给提交原初请求的那个客户系统,而无需所述通信经过所述中央服务器。
2.一种计算机系统应用,包括一用于通信的进程,该进程允许向一中央服务器(1)提交请求以便在未知的一组处理客户系统(5-9)上处理的一客户系统(2)将指令嵌入通过所述中央服务器分配到所述各处理客户系统的请求中,所述指令指示所述各处理客户系统如何以及从何处连接到所述提交客户系统。
3.一种在提交客户系统(2)上的用户界面方法,包括以下步骤向提交客户系统的提交者呈现一用户界面,并在用户界面上同时性地接收和显示来自多个处理客户系统(5-9)的输入的概要,而同时启动向一个或多个所述处理客户系统同时性地发送命令的步骤。
4.权利要求3的用户界面方法,进一步包括启动一些附加信息窗口的显示的步骤,这些窗口显示与在所选的单个处理客户系统(5)上的一作业步(35)的通信的附加的详情。
5.权利要求3的用户界面方法,进一步包括以下步骤一旦从处理客户系统接收到通信,立即启动所述用户界面对自所述处理客户系统(5-9)接收到的通信的解释,并且概括其结果和向所述提交者呈现所选择的重要结果,或者,作为从其他处理客户系统接收到通信的结果,自动向某些处理客户系统发送命令以更改它们的进一步操作。
6.一种在提交客户系统上的用户界面方法,包括以下步骤向提交客户系统的提交者呈现一用户界面,并在用户界面上同时性地接收和显示来自多个处理客户系统(5-9)的输入的概要,而同时启动向一个或多个所述处理客户系统同时性地发送命令的一步骤,该方法进一步包括以下步骤启动可能同时存在于提交客户系统的提交者之中的用户界面进程(29)的一个或多个不同的实例,以检测已经处于使用中的优选的通信端口并由此检测出另一个或多个实例的存在,并且根据所述检测选择另一个可用的通信端口,并且还改变所述附加实例的可见特征,包括主窗口或所有子窗口的颜色,以便所述提交者能够将属于所公开的监视系统的一个实例及相关作业步(35、38)的窗口与属于其他实例的窗口区分开来。
7.根据权利要求1的计算机系统,进一步包括在一提交客户系统上的一连接进程(30),用于接收来自处理客户系统(5-9)新连接,这些处理客户系统的身份事先是未知的。
8.一种计算机系统,包括一中央服务器(1)和一提交者应用,它们与一应用进程一起,被利用来提供对一个批或网格计算系统的全面控制,以接收和发派请求,所述应用进程同时性地允许正在处理所发派的请求的客户系统与一计算系统传递一通信,该计算系统包括一密钥系统,这些密钥可以通过一中央服务器传递以用于初始的作业初始化消息,并且对于其他连接可以直接在客户系统之间传递,以允许客户系统相互明确地标识,并排斥来自所述计算系统中的其他客户系统的通信。
9.一种计算机系统通信方法,包括每个作业步的、在一提交客户系统上的以下步骤从一相关的处理客户系统(5)接收一输入,使用特定于由所述处理客户系统执行的一作业步(35)的标识信息标记来自所述相关的处理客户系统的所述输入,并在标记之后将所述输入返回给一用户界面进程(29),以便作为与所述特定的处理客户系统和所标记的输入的一个作业步(35)相关的输入显示出来。
10.一种计算机系统通信方法,其包括由建立在一处理客户系统(5)上的一命令进程(33)执行的以下步骤从在一提交客户系统上的一用户界面进程(29)接收命令,并将从在所述提交客户系统上的所述用户界面进程接收到的命令通过一管道转发给在所述处理客户系统上的一批作业步(35)。
11.一种计算机系统通信方法,包括由建立在一处理客户系统(5)的一响应进程(34)执行的以下步骤从在所述处理客户系统上的一批作业步(35)接收结果,并将所接收到的结果立即通过一通信链路转发给一提交客户系统,以进行显示和分析。
12.一种信息处理系统,包括一计算系统,该计算系统连接到多个处理客户系统(5-9),并提供了一双向管道(40、41)和一通信进程(31),以便同时性地从在一处理客户系统(5)上的一批作业步(35)接收输出,并向在所述处理客户系统上的所述批作业步发送输入。
13.一种信息处理系统,包括一计算系统,该计算系统通过一通信链路连接到担当处理客户系统(5-9)和提交客户系统(1-4)的多个客户系统,并提供了一双向管道(40、41)和一通信进程应用,以便同时性地从在一处理客户系统(5)上的一批作业步(35)接收输出,并向在所述处理客户系统上的所述批作业步发送输入,其中,在一通信进程(31)中,一提交客户系统通过检测与一处理客户系统的通信链路的终止来检测出在所述处理客户系统上的一处理步骤的完成。
14.一种信息处理系统,包括一个具有一中央服务器(1)和通信应用的计算系统,其中一中央批管理器负责工作负荷平衡和作业启动及完成,而其他的命令和状态信息是直接在所述计算系统的、正在处理其各自工作负荷的多个提交者的系统和多个客户系统之间进行传送的。
15.权利要求14的信息处理系统,其利用所述提交者的系统和客户系统之间的由事件驱动的对等通信,所述通信进程使得能够传递详细的状态和控制信息,而不使所述中央服务器超负荷,以及不进行轮询。
16.权利要求15的信息处理系统,其中在连接到所述中央服务器的提交者系统和客户批处理系统上都使用了多个进程线程,并且一用户界面向一提交者合并和显示结果,并允许命令被发送给运行在各客户批处理系统上的各进程。
全文摘要
一种用于在网格和批计算系统中的改进的作业监视和控制的解决方案提供了一中央服务器的批管理器,该批管理器只负责工作负荷平衡和作业的启动与完成,而所有其他命令和状态信息是直接在正处理其各自工作负荷的多个提交者的系统和多个客户系统之间进行传送的。所述计算系统和通信进程利用了在提交者的系统和客户系统之间的事件驱动的对等通信,从而使得能够传递更详细的状态和控制信息,而不使中央服务器超负荷,并且通过避免轮询,还提供了结果的更即时的反馈。在提交者的系统和客户系统上都采用了多个进程线程,并且一用户界面向提交者合并和显示结果,并允许手动或自动地把命令发送给在诸客户批系统上运行的进程。
文档编号G06F9/46GK1573696SQ20041003413
公开日2005年2月2日 申请日期2004年4月22日 优先权日2003年6月11日
发明者G·E·斯特雷特 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1