CN101237379B - 应用软件执行系统、计算机、应用软件执行装置、应用软件执行系统的控制方法及程序 - Google Patents

应用软件执行系统、计算机、应用软件执行装置、应用软件执行系统的控制方法及程序 Download PDF

Info

Publication number
CN101237379B
CN101237379B CN2008100029678A CN200810002967A CN101237379B CN 101237379 B CN101237379 B CN 101237379B CN 2008100029678 A CN2008100029678 A CN 2008100029678A CN 200810002967 A CN200810002967 A CN 200810002967A CN 101237379 B CN101237379 B CN 101237379B
Authority
CN
China
Prior art keywords
application software
mentioned
execution
server
request
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.)
Expired - Fee Related
Application number
CN2008100029678A
Other languages
English (en)
Other versions
CN101237379A (zh
Inventor
中村英雄
山田孝典
横泽泰忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from JP2007022672A external-priority patent/JP5243721B2/ja
Priority claimed from JP2007043399A external-priority patent/JP5018128B2/ja
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of CN101237379A publication Critical patent/CN101237379A/zh
Application granted granted Critical
Publication of CN101237379B publication Critical patent/CN101237379B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供可以不受服务器的性能或线路质量左右并且不用停止应用软件的执行地使系统稳定地动作的应用软件执行系统等。本发明是将应用软件提供服务器(2)与应用软件执行装置(4)利用第一网络(6)连接,并且将应用软件执行装置(4)与客户终端(5)利用第二网络(7)连接的应用软件执行系统(1),应用软件执行装置(4检测所取得的应用软件(11a),如果是正常状态则执行该应用软件(11a),如果是异常状态则对应用软件提供服务器(2)请求代理执行。应用软件提供服务器(2)基于代理执行的请求,执行代理应用软件(11b)。

Description

应用软件执行系统、计算机、应用软件执行装置、应用软件执行系统的控制方法及程序
技术领域
本发明涉及借助LAN、互联网等通信网络来执行应用软件的应用软件执行系统、计算机、应用软件执行装置、应用软件执行系统的控制方法及程序。
背景技术
已知以往在该种网络系统中,服务器对连接互联网的各终端提供应用软件执行服务。该网络系统是通过使用者从客户终端经由互联网访问服务器,而执行保存于服务器中的应用软件,取得执行结果(输出数据)(参照专利文献1)。
专利文献1特开2003-186380号公报
但是,近年来,如上所述的网络系统由各种各样的销售商(vendor)构建,使用者选择使用自己所需要的服务。但是,如上所述的网络系统中,在网络线路不稳定的情况下,会有通信中断、无法获得足够的响应速度的问题。另外,在服务器死机的情况下,或在线路断开的情况下,会有直到系统恢复时使用者才能接受服务的提供的问题。为了解决该问题,可以取代客户终端经由互联网访问上述的服务器的构成,而考虑如下的构成,即,在使用者的LAN内设置从上述的服务器取得应用软件并且进行应用软件的执行的执行服务器。由于若如此设置,则客户终端通过访问利用LAN连接的执行服务器,就可以取得应用软件的执行结果,因此就不需要经由互联网访问服务器。
但是,即使如上所述地设为客户终端访问执行服务器的构成,在执行服务器的应用软件中有不佳状况的情况下,也会有客户终端无法从执行服务器取得应用软件的执行结果的问题。该情况下,虽然可以通过从客户终端访问提供了应用软件的服务器来取得应用软件的执行结果,但是每次在应用软件中有不佳状况时都需要停止应用软件的执行而进行访问地址的设定变更,从而有操作变得烦杂的问题。
发明内容
所以,目的在于,提供可以不受服务器的性能或线路质量左右并且不停止应用软件的执行地稳定地使系统动作的应用软件执行系统、计算机、应用软件执行装置、应用软件执行系统的控制方法及程序。
本发明的应用软件执行系统是将提供应用软件的应用软件提供服务器、执行从应用软件提供服务器取得的应用软件的应用软件执行装置利用第一网络连接,并且将应用软件执行装置、对该应用软件执行装置请求应用软件的执行的客户终端利用第二网络连接的应用软件执行系统,其特征是,应用软件执行装置具备:储存从应用软件提供服务器取得的应用软件的应用软件储存机构;检测所储存的应用软件的正常状态·异常状态的状态检测机构;执行机构,其在状态检测机构检测出应用软件的正常状态的状态下,在有来自客户终端的应用软件的执行请求时,执行该应用软件,并将其执行结果向客户终端发送;代理执行请求机构,其在状态检测机构检测出上述异常状态的状态下,在有来自客户终端的应用软件的执行请求时,对应用软件提供服务器请求代理执行,应用软件提供服务器具备:储存与所提供的应用软件相同的代理应用软件的代理应用软件储存机构、基于代理执行的请求执行代理应用软件并将其执行结果向客户终端发送的代理执行机构。
在上述说明中所记载的应用软件执行系统中,最好应用软件执行装置还具备将包括应用软件的账户信息及对话信息的同步数据向应用软件提供服务器发送的同步数据发送机构,应用软件提供服务器基于所接收的应用软件的同步数据,将代理应用软件更新。
在上述说明中所记载的应用软件执行系统中,最好应用软件提供服务器还具备将包括代理应用软件的账户信息及对话信息的同步数据向应用软件执行装置发送的代理同步数据发送机构,应用软件执行装置基于所接收的代理应用软件的同步数据,将应用软件更新。
在上述说明中所记载的应用软件执行系统中,最好应用软件执行装置由执行部和切换部构成,其中,执行部具有应用软件储存机构、执行机构,切换部与执行部独立地动作,具有状态检测机构;代理执行请求机构;判定执行部是否是可以执行状态的判定机构;接收来自客户终端的执行请求的接收机构;转送地址切换机构,其在执行部是可以执行状态的情况下,将所接收的执行请求向执行部转送,在执行部不是可以执行状态的情况下,将所接收的执行请求向应用软件提供服务器转送。
在上述说明中所记载的应用软件执行系统中,最好执行部还具有用于对执行部进行电源供给的执行部用电源电路,切换部还具有用于对切换部进行电源供给的切换部用电源电路。
在上述说明中所记载的应用软件执行系统中,最好切换部具有认证可以执行应用软件的客户终端的认证机构,仅在认证成功的情况下,转送执行请求。
在上述说明中所记载的应用软件执行系统中,最好客户终端及应用软件执行装置经由进行数据的中继处理的网关利用上述第二网络连接,并且网关与应用软件提供服务器被利用上述第一网络连接,客户终端具备客户侧执行请求机构,其指定成为执行对象的应用软件,将网关作为执行请求地址进行执行请求,网关具备:保存判定机构,其参照储存应用软件的保存地址的数据库,判定在应用软件执行装置中是否保存有所指定的应用软件;执行判定机构,其判定应用软件执行装置是否是可以执行状态;请求地址变更机构,其在从客户终端收到执行请求后,在利用保存判定机构判定在应用软件执行装置中保存有所指定的应用软件,并且判定应用软件执行装置是可以执行状态的情况下,将执行请求地址变更为应用软件执行装置,在利用保存判定机构判定在应用软件执行装置中没有保存所指定的应用软件的情况下,或在判定应用软件执行装置并非可以执行状态的情况下,将应用软件的执行请求地址变更为应用软件提供服务器;网关侧执行请求机构,其对变更了的执行请求地址进行执行请求,应用软件执行装置中的执行机构及应用软件提供服务器中的代理执行机构基于来自网关的执行请求执行应用软件,将其执行结果经由网关向客户终端发送。
在上述说明中所记载的应用软件执行系统中,最好还加上网关服务器,其经由第一网络与网关连接,并且在网关与应用软件提供服务器之间进行数据的中继处理,网关还具备:执行请求封装机构,其在请求地址变更机构将应用软件的执行请求地址变更为应用软件执行装置的情况下,通过将执行请求封装,而将执行请求地址的网关指定为应用软件执行装置,在请求地址变更机构将应用软件的执行请求地址变更为应用软件提供服务器的情况下,通过将执行请求封装,而将执行请求地址的网关指定为网关服务器;解封装机构,其将所接收的执行结果解封装而向客户终端发送,应用软件执行装置中的执行机构是将来自网关的执行请求解封装,执行应用软件,将其执行结果封装而向网关发送的机构,网关服务器具备转送机构,其将来自网关的执行请求解封装,向应用软件提供服务器转送,并且将来自应用软件提供服务器的执行结果封装而向网关转送,应用软件提供服务器中的代理执行机构基于由网关服务器转送的执行请求执行应用软件,将其执行结果向网关服务器发送。
在上述说明中所记载的应用软件执行系统中,最好执行请求封装机构是除了指定执行请求地址的网关以外,还对执行请求赋予认证信息的机构,应用软件执行装置还具备基于认证信息进行执行请求的认证的认证机构,执行机构仅对认证成功的执行请求允许应用软件的执行。
在上述说明中所记载的应用软件执行系统中,最好还具备认证服务器,其经由第一网络与网关服务器连接,进行执行请求的认证,执行请求封装机构是除了指定执行请求地址的网关以外,还对执行请求赋予认证信息的机构,网关服务器中的转送机构是在来自网关的执行请求解封装时,利用认证服务器认证的机构,应用软件提供服务器仅对在认证服务器中认证成功的执行请求允许应用软件的执行。
本发明的计算机的特征是,作为上述说明中所记载的应用软件执行系统中所用的应用软件执行装置或应用软件提供服务器发挥作用。
本发明的应用软件执行装置是利用第一网络与提供应用软件的应用软件提供服务器连接,并且利用第二网络与请求应用软件的执行的客户终端连接,执行从应用软件提供服务器取得的应用软件的应用软件执行装置,其特征是,应用软件提供服务器是储存与所提供的应用软件相同的代理应用软件,基于来自应用软件执行装置的代理执行的请求,执行代理应用软件,将其执行结果向客户终端发送的服务器,具备:储存从应用软件提供服务器取得的应用软件的应用软件储存机构;检测所储存的应用软件的正常状态·异常状态的状态检测机构;执行机构,其在状态检测机构检测出应用软件的正常状态的状态下,在有来自客户终端的应用软件的执行请求时,执行该应用软件,并将其执行结果向客户终端发送;代理执行请求机构,其在状态检测机构检测出上述异常状态的状态下,在有来自客户终端的应用软件的执行请求时,对应用软件提供服务器请求代理执行。
在上述说明中所记载的应用软件执行装置中,最好由执行部和切换部构成,其中,执行部具有应用软件储存机构、执行机构,切换部与执行部独立地动作,具有状态检测机构;代理执行请求机构;判定执行部是否是可以执行状态的判定机构;接收来自客户终端的执行请求的接收机构;转送地址切换机构,其在执行部是可以执行状态的情况下,将所接收的执行请求向执行部转送,在执行部不是可以执行状态的情况下,将所接收的执行请求向应用软件提供服务器转送。
本发明的应用软件执行系统的控制方法是利用第一网络将提供应用软件的应用软件提供服务器与执行从应用软件提供服务器取得的应用软件的应用软件执行装置连接,并且利用第二网络将应用软件执行装置与对该应用软件执行装置请求应用软件的执行的客户终端连接的应用软件执行系统的控制方法,其特征是,应用软件执行装置执行:储存从应用软件提供服务器取得的应用软件的步骤;检测所储存的应用软件的正常状态·异常状态的步骤;在状态检测机构检测出应用软件的正常状态的状态下,在有来自客户终端的应用软件的执行请求时,执行该应用软件,并将其执行结果向客户终端发送的步骤;在状态检测机构检测出上述异常状态的状态下,在有来自客户终端的应用软件的执行请求时,对应用软件提供服务器请求代理执行的步骤,应用软件提供服务器执行:储存与所提供的应用软件相同的代理应用软件的步骤;基于代理执行的请求,执行代理应用软件,并将其执行结果向客户终端发送的步骤。
在上述说明中所记载的应用软件执行系统的控制方法中,最好应用软件执行装置由基于来自客户终端的执行请求执行应用软件的执行部和与执行部独立地动作并切换执行请求的发送地址的切换部构成,切换部执行:判定执行部是否是可以执行状态的步骤;接收来自客户终端的执行请求的步骤;在执行部是可以执行状态的情况下,将所接收的执行请求向执行部转送,在执行部不是可以执行状态的情况下,将所接收的执行请求向应用软件提供服务器转送的步骤。
在上述说明中所记载的应用软件执行系统的控制方法中,最好客户终端及应用软件执行装置经由进行数据的中继处理的网关利用第二网络连接,并且网关与应用软件提供服务器被利用第一网络连接,客户终端执行指定成为执行对象的应用软件,将网关作为执行请求地址进行执行请求的步骤,网关执行:参照储存应用软件的保存地址的数据库,判定在应用软件执行装置中是否保存有所指定的应用软件的步骤;判定应用软件执行装置是否是可以执行状态的步骤;在从客户终端收到执行请求后,在判定在应用软件执行装置中保存有所指定的应用软件,并且判定应用软件执行装置是可以执行状态的情况下,将执行请求地址变更为应用软件执行装置,在判定在应用软件执行装置中没有保存所指定的应用软件的情况下,或在判定应用软件执行装置并非可以执行状态的情况下,将应用软件的执行请求地址变更为应用软件提供服务器的步骤;对变更了的执行请求地址进行执行请求的步骤,应用软件执行装置及应用软件提供服务器基于来自网关的执行请求执行应用软件,将其执行结果经由网关向客户终端发送。
本发明的程序的特征是,是用于使计算机执行上述说明中所记载的应用软件执行系统的控制方法中的各步骤的程序。
根据这些构成,可以起到如下所示的作用效果。在将第一网络用互联网构成,将第二网络用LAN构成的情况下,客户终端例如可以不经由互联网,而通过访问利用LAN连接的应用软件执行装置来取得应用软件的执行结果。这样,就可以不受互联网线路左右地在稳定的环境中执行应用软件。
另外,即使在应用软件执行装置的应用软件中有不佳状况的情况下,也可以根据来自客户终端的执行请求,对具有与该应用软件相同的代理应用软件的应用软件提供服务器请求代理执行而取得应用软件的执行结果。这样,就可以将应用软件提供服务器作为代理执行服务器利用,与追加新的代理执行装置的构成相比,可以用更低成本来进行系统构建。另外,在应用软件执行装置中,在应用软件为异常状态的情况下,由于将由客户终端对应用软件执行装置的执行请求自动地切换为对应用软件提供服务器的代理执行请求,因此就不需要每当在应用软件执行装置的应用软件中有不佳状况时,就停止应用软件的执行,在客户终端对执行请求地址进行设定变更。这样,客户终端就可以意识不到应用软件的不佳状况地取得应用软件的执行结果。而且,这里所说的「应用软件」是包括应用软件程序、应用软件程序中所利用的数据库的软件。另外,所谓「异常状态」是指不是正常状态的状态,例如是指对向应用软件定期发送的生存信号不响应的情况。
而且,也可以将本发明设为以下的构成。
在上述的应用软件执行系统中,最好应用软件执行装置还具备将包括应用软件的账户信息及对话信息的同步数据向应用软件提供服务器发送的同步数据发送机构,应用软件提供服务器基于所接收的应用软件的同步数据,将代理应用软件更新。
该情况下,最好应用软件执行装置还执行将包括应用软件的账户信息及对话信息的同步数据向应用软件提供服务器发送的步骤,应用软件提供服务器还执行基于所接收的应用软件的同步数据将代理应用软件更新的步骤。
根据这些构成,应用软件提供服务器就可以利用由应用软件执行装置发送的同步数据,取得与应用软件执行装置的同步。这样,客户终端就可以从应用软件提供服务器取得与对应用软件执行装置进行执行请求时的执行结果相同的执行结果。另外,可以将应用软件提供服务器作为应用软件执行装置的备份服务器利用,与在应用软件执行装置上追加新的备份装置的构成相比,可以用更低成本来构建系统。
该情况下,同步数据发送机构最好在状态检测机构检测出正常状态时,与来自客户终端的应用软件的执行请求对应地发送应用软件的同步数据。
根据该构成,由于在应用软件的正常状态时,每次接收来自客户终端的执行请求时,都对应用软件提供服务器进行备份,因此在应用软件执行装置的应用软件中产生不佳状况的情况下,成为修复的对象的数据就很少,可以在短时间内将应用软件修复。
这些情况下,同步数据发送机构最好在状态检测机构检测出上述异常状态的情况下,发送应用软件的同步数据。
根据该构成,由于形成在应用软件提供服务器的代理执行时取得与应用软件执行装置的同步的状态,因此客户终端就可以从应用软件提供服务器中可靠地取得与在应用软件执行装置中执行的情况相同的执行结果。
这些情况下,最好应用软件提供服务器还具备将包括代理应用软件的账户信息及对话信息的同步数据向应用软件执行装置发送的代理同步数据发送机构,应用软件执行装置基于所接收的代理应用软件的同步数据,将应用软件更新。
该情况下,最好代理应用软件的同步数据还包括版本更新数据及/或补丁数据。
根据这些构成,应用软件执行装置就可以利用由应用软件提供服务器发送的同步数据,取得与应用软件提供服务器的同步。这样,在应用软件提供服务器进行代理执行时,就可以将应用软件执行装置作为应用软件提供服务器的备份服务器利用。另外,通过从应用软件提供服务器接收版本更新数据或补丁数据,就可以进行应用软件执行装置的应用软件的维护。例如,在应用软件执行装置的应用软件中产生故障的情况下,可以将补丁数据等向应用软件执行装置发送,进行故障应对。另外,在想要对应用软件追加新的功能的情况下,可以发送版本更新数据,对应用软件进行版本更新。
这些情况下,最好应用软件执行装置还具备应用软件再次取得请求机构,其在状态检测机构检测出从异常状态向正常状态的切换的情况下,请求从应用软件提供服务器再次取得与代理应用软件相同的应用软件,应用软件储存机构再次储存针对应用软件再次取得请求机构的请求而再次取得的应用软件。
这些情况下,最好应用软件执行装置还执行如下的步骤,即,在状态检测机构检测出从异常状态向正常状态的切换的情况下,请求从应用软件提供服务器再次取得与代理应用软件相同的应用软件,并且再次储存针对请求而再次取得的应用软件。
根据这些构成,在应用软件执行装置的应用软件修复的情况下,应用软件执行装置可以不做变动地继续保持在应用软件执行装置的应用软件的故障时一直进行代理执行的应用软件提供服务器的环境。这样,客户终端就可以意识不到应用软件的故障修复地取得应用软件的执行结果。
这些情况下,应用软件执行装置最好还具备应用软件管理机构,其用于利用来自客户终端的操作,进行应用软件的环境设定及/或状态阅览。
根据该构成,可以从客户终端进行应用软件的环境设定及/或状态阅览,不需要在应用软件执行装置中设置输入设备或输出设备等,可以将应用软件执行装置设为低成本且简单的构成。这里所说的「环境设定」是指每个用户的有效权限的设定或认证设定等。
另外,也可以如下所示地构成。
本发明的应用软件执行系统是将客户终端与基于来自该客户终端的执行请求来执行应用软件的应用软件执行装置利用第二网络连接,并且将应用软件执行装置与代理应用软件的执行的代理服务器(应用软件提供服务器)利用第一网络连接的应用软件执行系统,其特征是,具备执行部和切换部,其中,执行部具有执行应用软件并将其执行结果向客户终端发送的执行机构,切换部与执行部独立地动作,具有判定执行部是否是可以执行状态的判定机构;接收来自客户终端的执行请求的接收机构;转送地址切换机构,其在执行部是可以执行状态的情况下,将所接收的执行请求向执行部转送,在执行部不是可以执行状态的情况下,将所接收的执行请求向代理服务器转送,代理服务器具备储存与所提供的应用软件相同的代理应用软件的代理应用软件储存机构;代理执行机构,其基于来自应用软件执行装置的执行请求,执行代理应用软件,将其执行结果向客户终端发送。
本发明的应用软件执行系统的控制方法是将客户终端与具有执行部及切换部的应用软件执行装置利用第二网络连接,其中,执行部基于来自该客户终端的执行请求来执行应用软件,切换部与执行部独立地动作,切换执行请求的发送地址,并且将应用软件执行装置与代理应用软件的执行的代理服务器利用第一网络连接的应用软件执行系统的控制方法,其特征是,执行部执行:执行应用软件,将其执行结果向客户终端发送的步骤,切换部执行:判定执行部是否是可以执行状态的步骤;接收来自客户终端的执行请求的步骤;在执行部是可以执行状态的情况下,将所接收的执行请求向执行部转送,在执行部不是可以执行状态的情况下,将所接收的执行请求向代理服务器转送的步骤,代理服务器执行:储存与所提供的应用软件相同的代理应用软件的步骤;基于来自应用软件执行装置的执行请求,执行代理应用软件,并将其执行结果向客户终端发送的步骤。
根据这些构成,在将第一网络用互联网构成,将第二网络用LAN构成的情况下,客户终端例如可以不经由互联网,而通过访问利用LAN连接的应用软件执行装置来取得应用软件的执行结果。这样,就可以不受互联网线路左右地在稳定的环境中执行应用软件。
另外,由于将应用软件执行装置分为主要进行应用软件的执行处理的执行部、主要进行数据的转送处理的切换部,使之各自独立地动作,因此可以将应用软件执行装置整体的处理负担分散。这样,例如就可以抑制CPU的发热,可以降低应用软件执行装置的故障率。另外,由于一般来说切换部与执行部相比处理量更少,因此可以降低切换部的故障率,可以使系统稳定地动作。
另外,即使在应用软件执行装置的执行部不是可以执行状态的情况下(发生故障等情况),由于切换部与执行部独立地动作,因此切换部也可以将来自客户终端的执行请求向具有与该应用软件相同的代理应用软件的代理服务器转送,从代理服务器取得应用软件的执行结果。
另外,在应用软件执行装置的执行部发生故障的情况下,由于将由客户终端对应用软件执行装置的执行请求自动地向代理服务器转送,因此就不需要在每次执行部发生故障时在客户终端对执行请求地址进行设定变更。这样,客户终端就可以意识不到执行部的故障地取得应用软件的执行结果。
另外,通过在应用软件执行装置内设置切换部,与追加新的机器的构成相比,可以实现节约空间化。而且,这里所说的「应用软件」是包括应用软件程序、应用软件程序中所利用的数据库的软件。另外,所谓「不是可以执行状态」是包括执行部的故障或电源OFF、CPU的温度超过动作保证温度的情况、内存不足的情况、动作电压低于动作保证电压的情况等的状态。
该情况下,代理服务器最好还具备向应用软件执行装置提供应用软件的应用软件提供机构。
根据该构成,可以将代理服务器兼作向应用软件执行装置提供应用软件的应用软件提供服务器使用,与追加新的应用软件提供服务器的构成相比,可以用更低成本来进行系统构建。
该情况下,最好执行部还具有用于对执行部进行电源供给的执行部用电源电路,切换部还具有用于向切换部进行电源供给的切换部用电源电路。
根据该构成,由于执行部及切换部各自独立地具备电源电路,因此例如在从单一的电源接受电能的供给的情况下,即使在执行部用电源电路发生故障时,也可以向切换部供给电能,因而客户终端可以从代理服务器取得执行结果。
该情况下,最好应用软件执行装置还具备经由执行部用电源电路向执行部供给电能的执行部用电源、经由切换部用电源电路向切换部供给电能的切换部用电源。
根据该构成,由于在执行部及切换部中分别独立地具备电源,因此即使在执行部的电源发生故障的情况下,也可以向切换部供给电能,因而客户终端就可以从代理服务器取得执行结果。
这些情况下,最好切换部具有认证可以执行应用软件的客户终端的认证机构,仅在认证成功的情况下,转送执行请求。
根据该构成,由于切换部不会转送认证成功的客户终端以外的客户终端的执行请求,因此可以强化安全性。另外,由于由此可以对每个客户终端限制可以执行的应用软件,因此可以将各客户终端特别化为特定的功能。
本发明的切换装置的特征是,作为上述的应用软件执行系统中所用的切换部发挥作用。
另外,也可以如下所示地构成。
本发明的应用软件执行系统是将客户终端与基于来自该客户终端的执行请求来执行应用软件的应用软件执行装置经由进行数据的中继处理的网关利用第二网络连接,并且将网关与取代应用软件执行装置来执行应用软件的代理服务器(应用软件提供服务器)利用第一网络连接的应用软件执行系统,其特征是,客户终端具备客户侧执行请求机构,其指定成为执行对象的应用软件,将网关作为执行请求地址进行执行请求,网关具备:保存判定机构,其参照储存应用软件的保存地址的数据库,判定在应用软件执行装置中是否保存有所指定的应用软件;执行判定机构,其判定应用软件执行装置是否是可以执行状态;请求地址变更机构,其在从客户终端收到执行请求后,在利用保存判定机构判定在应用软件执行装置中保存有所指定的应用软件,并且判定应用软件执行装置是可以执行状态的情况下,将执行请求地址变更为应用软件执行装置,在利用保存判定机构判定在应用软件执行装置中没有保存所指定的应用软件的情况下,或在判定应用软件执行装置并非可以执行状态的情况下,将应用软件的执行请求地址变更为代理服务器;网关侧执行请求机构,其对变更了的执行请求地址进行执行请求,应用软件执行装置具备执行机构,其基于来自网关的执行请求执行应用软件,将其执行结果经由网关向客户终端发送,代理服务器具备代理执行机构,其基于来自网关的执行请求执行应用软件,将其执行结果经由网关向客户终端发送。
本发明的应用软件执行系统的控制方法是将客户终端与基于来自该客户终端的执行请求来执行应用软件的应用软件执行装置经由进行数据的中继处理的网关利用第二网络连接,并且将网关与取代应用软件执行装置来执行应用软件的代理服务器利用第一网络连接的应用软件执行系统的控制方法,其特征是,客户终端执行指定成为执行对象的应用软件,将网关作为执行请求地址进行执行请求的步骤,网关执行:参照储存应用软件的保存地址的数据库,判定在应用软件执行装置中是否保存有所指定的应用软件的步骤;判定应用软件执行装置是否是可以执行状态的步骤;在从客户终端收到执行请求后,在判定在应用软件执行装置中保存有所指定的应用软件,并且判定应用软件执行装置是可以执行状态的情况下,将执行请求地址变更为应用软件执行装置,在判定在应用软件执行装置中没有保存所指定的应用软件的情况下,或在判定应用软件执行装置并非可以执行状态的情况下,将应用软件的执行请求地址变更为代理服务器的步骤;对变更了的执行请求地址进行执行请求的步骤,应用软件执行装置基于来自网关的执行请求执行应用软件,将其执行结果经由网关向客户终端发送,代理服务器基于来自网关的执行请求执行应用软件,将其执行结果经由网关向客户终端发送。
根据该构成,在将第一网络用互联网构成,将第二网络用LAN构成的情况下,客户终端例如可以不经由互联网,而通过访问利用LAN连接的应用软件执行装置来取得应用软件的执行结果。这样,就可以不受互联网线路质量左右地在稳定的环境中执行应用软件。
另外,由于仅通过客户终端仅指定所需的应用软件,对网关进行执行请求,网关就会自动地将网关方的执行请求向具有该应用软件的服务器转送,因此客户终端(用户)就可以意识不到应用软件的保存地址地取得应用软件的执行结果。另外,由于像这样将网关设为客户终端的网关,因此可以将服务器荫蔽,可以构建柔性的网络。例如,即使追加或更换服务器,如果对网关追加设定,则由于来自客户终端的访问地址不会改变,因此可以很容易地进行系统变更。
另外,即使在应用软件执行装置中没有应用软件的情况下或应用软件执行装置发生故障时,由于网关自动地将执行请求的转送地址切换为外部服务器,因此就不需要在每次不佳状况时在客户终端对执行请求地址进行设定变更。
而且,这里所说的「应用软件」是包括应用软件程序、应用软件程序中所利用的数据库的软件。另外,所谓「不是可以执行状态」是包括执行部的故障或电源OFF、CPU的温度超过动作保证温度的情况、内存不足的情况、动作电压低于动作保证电压的情况、应用软件的执行结果的响应时间慢的情况的状态。
该情况下,代理服务器最好还具备向应用软件执行装置提供应用软件的应用软件提供机构。
根据该构成,可以将代理服务器兼作向应用软件执行装置提供应用软件的应用软件提供服务器使用,与追加新的应用软件提供服务器的构成相比,可以用更低成本来进行系统构建。
该情况下,最好还加上网关服务器,其经由第一网络与网关连接,并且在网关与代理服务器之间进行数据的中继处理,网关还具备:执行请求封装机构,其在请求地址变更机构将应用软件的执行请求地址变更为应用软件执行装置的情况下,通过将执行请求封装,而将执行请求地址的网关指定为应用软件执行装置,在请求地址变更机构将应用软件的执行请求地址变更为代理服务器的情况下,通过将执行请求封装,而将执行请求地址的网关指定为网关服务器;解封装机构,其将所接收的执行结果解封装而向客户终端发送,应用软件执行装置中的执行机构是将来自网关的执行请求解封装,执行应用软件,将其执行结果封装而向网关发送的机构,网关服务器具备转送机构,其将来自网关的执行请求解封装,向代理服务器转送,并且将来自代理服务器的执行结果封装而向网关转送,代理服务器中的代理执行机构基于由网关服务器转送的执行请求执行应用软件,将其执行结果向网关服务器发送。
根据该构成,可以强化进行封装通信的装置间的安全性。例如在将第一网络用互联网构成,将第二网络用公司内部LAN构成的情况下,可以防止公司内部LAN及互联网中的恶意的盗听。而且,这里所说的封装是指将原来的数据(例如代理服务器方的数据包)装入新的数据(例如网关服务器方的数据包)中的技术。
这些情况下,最好执行请求封装机构是除了指定执行请求地址的网关以外,还对执行请求赋予认证信息的机构,应用软件执行装置还具备基于认证信息进行执行请求的认证的认证机构,执行机构仅对认证成功的执行请求允许应用软件的执行。
这些情况下,最好还具备认证服务器,其经由第一网络与网关服务器连接,进行执行请求的认证,执行请求封装机构是除了指定执行请求地址的网关以外,还对执行请求赋予认证信息的机构,网关服务器中的转送机构是在来自网关的执行请求解封装时,利用认证服务器认证的机构,代理服务器仅对在认证服务器中认证成功的执行请求允许应用软件的执行。
根据这些构成,由于在应用软件执行装置是可以执行状态的情况下,可以防止对应用软件执行装置的非正常访问,在应用软件执行装置不是可以执行状态的情况下,可以防止对代理服务器的非正常访问,因此可以强化安全性。另外,利用它们,能够对每个客户终端限制可以进行执行请求的应用软件。
附图说明
图1是第一实施方式的应用软件执行系统的系统构成图。
图2是第一实施方式的应用软件执行系统的控制构成图。
图3是第一实施方式的应用软件执行装置的执行环境的示意图。
图4是表示第一实施方式的应用软件执行系统的应用软件执行组的取得处理的流程图。
图5是表示第一实施方式的应用软件执行系统的应用软件执行组的正常时执行处理的流程图。
图6是表示第一实施方式的应用软件执行系统的应用软件执行组的异常时执行处理的流程图。
图7是表示第一实施方式的应用软件执行系统的应用软件执行组的修复处理的流程图。
图8是第二实施方式的应用软件执行系统的系统构成图。
图9是第二实施方式的应用软件执行系统的控制构成图。
图10(a)是将前面敞开的第二实施方式的应用软件执行装置内部的概略立体图,(b)是将前面封闭的第二实施方式的应用软件执行装置内部的概略立体图。
图11是表示第二实施方式的应用软件执行系统中的来自客户终端的执行请求的转送地址的切换处理的流程图。
图13是第三实施方式的应用软件执行系统的系统构成图。
图14是第三实施方式的应用软件执行系统的网络说明图。
图15是第三实施方式的应用软件执行系统的控制构成图。
图16是表示第三实施方式的应用软件保存表的一个例子的图。
图17是第三实施方式的封装处理、解封装处理的说明图。
图18是表示第三实施方式的应用软件执行系统的应用软件执行组的执行处理的流程图。
具体实施方式
下面将参照附图对本发明的实施方式的应用软件执行系统、计算机、应用软件执行装置、应用软件执行系统的控制方法及程序进行说明。本发明是在设于使用者的LAN内的执行服务器的应用软件程序中有不佳状况的情况下,应用软件程序的供应商的服务器不经由执行服务器,而是经由互联网代理执行。
首先参照图1的系统构成图,对本发明的第一实施方式的应用软件执行系统1的系统构成进行说明。本实施方式的应用软件执行系统1利用互联网6(第一网络)连接:提供将应用软件程序12和该应用软件程序12执行时所使用的至少一个以上的数据库13设为一组的应用软件执行组11a(应用软件)的多个销售商(X公司、Y公司)所具有的各应用软件提供服务器2a、2b;管理应用软件执行系统1的平台管理者(P公司)所具有的单一的管理服务器3;设于使用应用软件执行组11a的多个使用者(A公司、B公司)的办公室(办公室A1、A2、A3、B1、B2、B3)中的各应用软件执行装置4aa、4ab、4ac、4ba、4bb、4bc,并且利用办公室内LAN7(第二网络)连接:各应用软件执行装置4、对该应用软件执行装置4请求应用软件执行组11a的执行的2台以上的客户终端5。
管理服务器3例如设于P公司的数据中心,作为应用软件提供者用于向使用者(应用软件执行装置4)提供应用软件执行组11a的接收窗口发挥作用。此外,使用者从管理服务器3取得在管理服务器3中注册的多个应用软件执行组11a的信息(应用软件提供服务器2的地址address等),基于该信息从应用软件提供服务器2取得应用软件执行组11a。这样,使用者就可以很容易地检索应用软件执行组11a,并且可以拓宽应用软件执行组11a的选择的范围。另外,管理服务器3从使用者处取得应用软件执行组11a的使用状况,基于所取得的信息对提供者(应用软件提供服务器2)进行支付核款信息的管理。
应用软件执行装置4设于使用者的各办公室中,根据来自各办公室的客户中5的执行请求执行从应用软件提供服务器2下载的应用软件执行组11a。即,应用软件执行装置4在办公室内,例如作为housing service或hosting service之类的server base computing(基于服务器的计算技术:SBC)的服务器发挥作用。这样就形成如下的构成,即,各客户终端5可以不用安装应用软件执行组11a,而取得应用软件执行组11a的执行结果。另外,由于客户终端5可以不用经由互联网6,访问利用办公室内LAN7连接的应用软件执行装置4来取得应用软件执行组11a的执行结果,因此就可以不受互联网线路左右地在稳定的环境中执行应用软件执行组11a。
应用软件提供服务器2除了根据应用软件执行装置4的请求提供应用软件执行组11a以外,在应用软件执行装置4中,产生了应用软件执行组11a的不佳状况的情况下,取代应用软件执行装置4向客户终端5回复执行结果。该情况下,应用软件执行提供服务器2储存与应用软件执行装置4的应用软件执行组11a相同的代理应用软件执行组11b,通过执行它而向客户终端5回复相同的执行结果。这样,就可以将应用软件提供服务器2兼作代理执行服务器使用,与追加新的代理服务器的构成相比,可以用更低成本来进行系统构建。另外,各应用软件程序12由每个销售商在不同的开发环境中制成,各数据库13是与各应用软件程序12对应地构建的数据库。
接下来,参照图2的控制构成图对构成本实施方式的应用软件执行系统1的各装置(应用软件提供服务器2、管理服务器3、应用软件执行装置4及客户终端5)的控制构成进行说明。
应用软件执行装置4具备:通信界面21、输入输出界面22、内部总线23、CPU24(Central Processing Unit)、ROM25(Read Only Memory)、RAM26(Random Access Memory)及HDD27(Hard Disk Drive)。另外,在ROM25中储存有控制程序31或管理工具33(应用软件管理机构:后面叙述),在HDD27中,储存有多个为了执行应用软件执行组11a而构建的执行环境32。
执行环境32是对每个应用软件执行组11a构建的,具备成为用于使应用软件程序12动作的动作环境的容器34、用于在应用软件程序12的使用时访问数据库13的数据库引擎35(参照图3)。另外,对每个执行环境32分配RAM26的存储器区域等的源区,例如即使在产生内存泄漏的情况下,也不会有配置于其他的执行环境32中的应用软件执行组11a受到影响、停止动作的情况。
控制程序31定期地检测应用软件执行组11a的状态,基于所检测到的状态用CPU24来控制应用软件执行组11a的执行处理、同步处理及修复处理。作为应用软件执行组11a的状态检测方法,是在应用软件执行组11a中装入响应应用软件执行组11a的状态的响应程序,CPU24根据依照装入控制程序31中的发送程序而发送的信号的响应结果,来检测应用软件执行组11a的状态。此外,如果有来自响应程序的响应信号,则CPU24即检测为正常状态,如果没有响应信号,则检测为异常状态(状态检测机构)。而且,状态检测方法并不限于该方法,例如也可以设为在后台根据是否可以真正地执行应用软件执行组11a来进行状态检测。
此外,CPU24在检测到应用软件执行组11a的正常状态的状态下,当有来自客户终端5的应用软件执行组11a的执行请求时,则执行该应用软件执行组11a,将执行结果向客户终端5发送(执行机构)。另一方面,CPU24在检测到应用软件执行组11a的异常状态的状态下,当有来自客户终端5的应用软件执行组11a的执行请求时,则对上述应用软件提供服务器2进行代理执行请求(代理执行请求机构)。
另外,应用软件执行装置4与应用软件提供服务器2取得同步,从而将包括应用软件执行组11a的账户信息及对话信息的同步数据向应用软件提供服务器2发送(同步数据发送机构)。
该情况下,CPU24在检测到应用软件执行组11a的正常状态的情况下,根据来自客户终端5的应用软件执行组11a的执行请求,将同步信号向应用软件提供服务器2发送。由于每当收到来自客户终端5的执行请求时,就会向应用软件提供服务器2发送同步数据而进行备份,因此在应用软件执行装置4的应用软件执行组11a中产生不佳状况的情况下,成为修复的对象的数据就很少,可以在短时间内将应用软件执行组11a修复。
另外,CPU24在检测到应用软件执行组11a的异常状态的情况下,每次都将同步数据向应用软件提供服务器2发送。这样,由于在应用软件提供服务器2的代理执行时已形成与应用软件执行装置4取得同步的状态,因此客户终端5就可以从应用软件提供服务器2可靠地取得与在应用软件执行装置4中执行的情况相同的执行结果。
此外,基于所发送的同步数据,应用软件提供服务器2进行配设于后述的代理执行环境52中的代理应用软件执行组11b的更新,取得与应用软件执行装置4的同步。像这样,就可以将应用软件提供服务器2作为应用软件执行装置4的备份服务器利用,与在办公室内LAN7中追加新的备份装置的构成相比,可以用更低成本来构建系统。而且,这里所说的账户信息是在应用软件执行组11a的执行权限的赋予或认证设定中所用的信息,包括用户所属的组名、用户名、密码。另外,对话信息是在应用软件执行组11a的异常状态检测时,为了在应用软件提供服务器2中确保执行处理的延续性而使用的信息,包括对话ID、对话有效/无效标志、对话停止的最长时间、对话的最终访问时刻、对话所属的应用软件执行组名、对话时的更新数据。
另外,由于当CPU24检测到应用软件执行组11a的从异常状态向正常状态的切换时,即进行修复处理,因此应用软件执行装置4从应用软件提供服务器2再次取得与代理应用软件执行组11b相同的应用软件执行组11a。具体来说,在由应用软件执行装置4提出应用软件执行组11a的再次取得请求时(应用软件再次取得请求机构),CPU24则复制配设于应用软件提供服务器2的代理执行环境52中的代理应用软件执行组11b,向应用软件执行装置4发送。此后,应用软件执行装置4将再次取得的应用软件执行组11a再次配设于执行环境32中(应用软件储存机构)。像这样,在已将应用软件执行装置4的应用软件执行组11a修复的情况下,应用软件执行装置4就可以不做变动地继续保持在应用软件执行装置4的应用软件执行组11a的故障时一直进行代理执行的应用软件提供服务器2的环境。这样,客户终端5就可以意识不到应用软件执行组11a的故障修复地取得应用软件执行组11a的执行结果。
管理工具33是根据来自客户终端5的操作进行应用软件执行组11a的环境设定及状态阅览的工具。这里所说的环境设定是执行权限的赋予或认证设定。执行权限的赋予是通过对每个应用软件执行组11a设定可以执行的组名或用户名来进行的。另外,认证设定是通过对每个应用软件执行组11a设定用户名或密码来进行的。像这样,由于可以从客户终端5进行环境设定或状态阅览,因此就不需要在应用软件执行装置4中设置输入输出设备,可以形成简单的构成。
应用软件提供服务器2具备输入输出设备48、显示器49、通信界面41、输入输出界面42、内部总线43、CPU44、ROM45、RAM46及HDD47。另外,在ROM45中储存有控制程序51,在HDD47中储存有用于向应用软件执行装置4提供的提供用的应用软件执行组11a、与应用软件执行组11a相同的代理执行用的代理应用软件执行组11b及代理应用软件执行组11b的代理执行环境52。
控制程序51是用CPU44来控制应用软件执行组11a的发送处理、代理执行处理及同步处理的程序。应用软件执行组11a的发送处理是CPU44根据来自应用软件执行装置4的请求来发送储存于HDD47中的应用软件执行组11a的处理。此外,CPU44在将应用软件执行组11a向应用软件执行装置4发送的同时,在HDD47内复制与所发送的应用软件执行组11a相同的代理应用软件执行组11b。另外,将所复制的代理应用软件执行组11b配设于代理执行环境52中(代理应用软件储存机构)。
此外,CPU44当在应用软件执行装置4的应用软件执行组11a中产生不佳状况,接收到来自应用软件执行装置4的代理执行请求时,即在代理执行环境52中执行代理应用软件执行组11b,向客户终端5回复执行结果(代理执行机构)。该情况下,既可以设为经由应用软件执行装置4向客户终端5回复的构成,也可以设为向客户终端5直接回复的构成。
另外,应用软件提供服务器2与应用软件执行装置4取得同步,从而将同步数据向应用软件执行装置4发送(代理同步数据发送机构)。此后,基于所发送的同步数据,应用软件执行装置4进行储存于HDD27中的应用软件执行组11a的更新,取得与应用软件提供服务器2的同步。这样,在应用软件提供服务器2进行代理执行时,就可以将应用软件执行装置4作为应用软件提供服务器2的备份服务器利用。
另外,因应用软件提供服务器2包括版本更新数据或补丁数据地将同步数据向应用软件执行装置4发送,从而形成可以远程维护应用软件执行装置4的构成。例如,在应用软件执行装置4的应用软件执行组11a中产生故障的情况下,可以向应用软件执行装置4发送补丁数据,来进行故障应对。另外,在想要对应用软件执行组11a追加新的功能的情况下,可以发送版本更新数据,对应用软件执行组11a进行版本更新。
管理服务器3(参照编号61~69)及客户终端5(参照编号71~79)由于是与应用软件提供服务器2相同的硬件构成,因此省略说明。而且,客户终端5并不限于个人计算机,也可以是票据(receipt)发行装置等各种印刷装置或携带信息终端。
接下来,对应用软件执行系统1中的应用软件执行组11a的取得处理、正常时执行处理、异常时执行处理及修复处理的流程进行说明。首先,参照图4的流程图,对应用软件执行组11a的取得处理的流程进行说明。
首先,基于来自客户终端5的下载请求,应用软件执行装置4访问储存有所需的应用软件执行组11a的应用软件提供服务器2的URL(S01)。此后,应用软件提供服务器2将应用软件执行组11a作为代理应用软件执行组11b复制,配设于代理执行环境52中而完成应用软件执行组11a的发送准备(S02)。应用软件提供服务器2将应用软件执行组11a向应用软件执行装置4发送(S03)。应用软件执行装置4将所接收的应用软件执行组11a配设于执行环境32中而起动,完成应用软件执行组11a的执行准备(S04)。
接下来,参照图5的流程图,对应用软件执行系统1中的应用软件执行组11a的正常时执行处理的流程进行说明。
在应用软件执行装置4检测到应用软件执行组11a的正常状态的状态下,当由客户终端5提出应用软件执行组11a的执行请求时(S11),应用软件执行装置4即执行应用软件执行组11a(S12)。此后,应用软件执行装置4利用应用软件执行组11a的执行,将施加了变更的同步数据向应用软件提供服务器2发送,并且将执行结果向客户终端5回复(S13)。应用软件提供服务器2基于所接收的同步数据,将代理应用软件执行组11b更新(S14)。像这样就形成应用软件执行装置4在每次执行应用软件执行组11a时取得同步的构成。
接下来,参照图6的流程图,对应用软件执行系统1中的应用软件执行组11a的异常时执行处理的流程进行说明。
当应用软件执行装置4检测到应用软件执行组11a的异常状态时(S21),应用软件执行装置4即对应用软件提供服务器2进行代理应用软件执行组11b的起动请求(S22)。此后,应用软件执行装置4将未处理的同步数据向应用软件提供服务器2发送(S23),应用软件提供服务器2基于所接收的同步数据,将代理应用软件执行组11b更新而起动,完成代理应用软件执行组11b的代理执行准备(S24)。一旦代理执行准备完成,应用软件提供服务器2基将该信息向应用软件执行装置4回复(S25)。
该状态下,当由客户终端5向应用软件执行装置4提出应用软件执行组11a的执行请求时(S26),应用软件执行装置4就对应用软件提供服务器2进行代理应用软件执行组11b的代理执行请求(S27)。应用软件提供服务器2基于代理执行请求,代理执行代理应用软件执行组11b(S28),将执行结果向应用软件执行装置4回复,应用软件执行装置4又将所接收的执行结果向客户终端5转送(S29)。
最后,参照图7的流程图,对应用软件执行系统1中的应用软件执行组11a的修复处理的流程进行说明。
当应用软件执行装置4检测到应用软件执行装置4的从异常状态向正常状态的切换时(S31),就向应用软件提供服务器2发送修复请求(S32)。当应用软件提供服务器2收到修复请求时,即停止代理应用软件执行组11b(S33)。此后,应用软件提供服务器2复制代理应用软件执行组11b,作为应用软件执行组11a,向应用软件执行装置4再次发送(S34)。应用软件执行装置4将所接收的应用软件执行组11a配设于执行环境32中而起动,完成应用软件执行组11a的执行准备(S35)。
以上,根据第一实施方式,即使在应用软件执行装置4的应用软件执行组11a中有不佳状况的情况下,也可以根据来自客户终端5的执行请求,对具有与该应用软件执行组11a相同的代理应用软件执行组11b的应用软件提供服务器2请求代理执行,取得应用软件执行组11a的执行结果。这样,就可以将应用软件提供服务器2作为代理执行服务器利用,与追加新的代理执行装置的构成相比,可以用更低成本来进行系统构建。另外,在应用软件执行装置4中,在应用软件执行组11a为异常状态的情况下,由于将从客户终端5向应用软件执行装置4的执行请求自动地切换为向应用软件提供服务器2的代理执行请求,因此就不需要每当在应用软件执行装置4的应用软件执行组11a中有不佳状况时停止应用软件执行组11a的执行,在客户终端5中对执行请求地址进行设定变更。这样,客户终端5就可以意识不到应用软件执行组11a的不佳状况地取得应用软件执行组11a的执行结果。
另外,在应用软件执行装置4从多个应用软件提供服务器2接收应用软件执行组11a的发送的情况下,由于对每个应用软件执行组11a进行代理执行处理,因此即使在一个应用软件执行组11a中产生不佳状况,也可以对其他的应用软件执行组11a在办公室内LAN7内执行。另外,由于对每个应用软件执行组11a,在供应商的应用软件提供服务器2中进行备份,因此与将全部的应用软件执行组11a在单一的备份服务器中进行备份的构成相比,故障时的修复作业变得更为容易。
接下来,对本发明的第二实施方式进行说明。本实施方式的特征是,应用软件执行装置由主要进行应用软件执行组的执行处理的执行部、主要进行数据的转送处理的切换部构成。
图8是第二实施方式的应用软件执行系统101的系统构成图。本实施方式的系统构成由于虽然在将同图中所示的各构成要素的参照编号设为100号段这一点上不同,然而与第一实施方式大致相同,因此省略详细的说明。
接下来,参照图9的控制构成图对构成本实施方式的应用软件执行系统101的各装置(应用软件提供服务器102、管理服务器103、应用软件执行装置104及客户终端105)的控制构成进行说明。
应用软件执行装置104由进行应用软件执行组111a的执行的执行部115、转送应用软件执行组111a的执行请求及执行结果的切换部116构成。另外,应用软件执行装置104具备单一的电源,执行部115具有用于从电源向执行部115供给电能的执行部用电源电路(图示略),切换部116具有从电源向切换部116供给电能的切换部用电源电路(图示略)。这样,即使在执行部用电源电路发生故障的情况下,也可以从单一的电源经由切换部用电源电路向切换部116供给电能,切换部116将来自客户终端105的执行请求向应用软件提供服务器102转送,客户终端105从应用软件提供服务器102中取得执行结果。
另外,执行部115形成于设在应用软件执行装置104的外壳内的下方的执行基板117上,切换部116形成于竖立设置在执行基板117上的切换基板118(参照图10(a)、(b))上。
执行部115具备LAN界面121、输入输出界面122、内部总线123、CPU124(Central Processing Unit)、ROM125(Read Only Memory)、RAM126(Random Access Memory)、硬件监视电路128及2台HDD127a、127b(HardDisk Drive)。另外,在ROM125中储存有控制程序131或执行部用监视工具136,在HDD127a、127b中,储存有多个为了执行应用软件执行组111a而构建的执行环境132。另外,2台HDD127a、127b构成RAID,实现了访问速度的提高或数据的多路复用。执行环境132是与第一实施方式大致相同的作用(参照图3)。
执行部用监视工具136是将硬件监视电路128所监视的执行部115的硬件信息经常性或定期地向切换部116发送的工具。此外,当切换部116从执行部115接收到硬件信息时,即基于所接收的硬件信息切换来自客户终端105的执行请求的转送地址(转送地址切换机构:详细情况后述)。而且,这里所说的硬件信息是包括CPU124的温度及使用率、风扇的转速、RAM126的存储器使用量及执行部115的动作电压等的信息。
控制程序131是用CPU124控制应用软件执行组111a的执行处理的程序。此外,CPU124在有来自客户终端105的应用软件执行组111a的执行请求时,即执行该应用软件执行组111a,经由切换部116将执行结果向客户终端105发送(执行机构)。
切换部116具备2个LAN界面141a、141b、输入输出界面142、内部总线143、CPU144(Central Processing Unit)、ROM145(Read OnlyMemory)、RAM146(Random Access Memory)及硬件监视电路148。另外,在ROM145中储存有控制程序151、认证程序157及切换部用监视工具156。
2个LAN界面141a、141b中的一方的LAN界面141a与执行部115的LAN界面121直接连接,另一方的LAN界面141b经由办公室内LAN107与客户终端105及应用软件提供服务器102连接。
切换部用监视工具156基于由执行部115发生的硬件信息,判定执行部115是否可以执行应用软件执行组111a(判定机构)。该情况下,在ROM145内,储存有用于判定执行部115是否可以执行应用软件执行组111a的判定基准,切换部116根据从执行部115接收的硬件信息是否满足该判定基准,来判定执行部115的状态。而且,这里所说的判定基准是执行部115为了稳定地执行应用软件执行组111a而需要的最低限度的CPU124的温度、使用率、风扇的转速、RAM126的存储器使用量及执行部115的动作电压等。
控制程序151是基于上述的判定结果用CPU144控制执行请求的转送地址的切换处理的程序。在从执行部115接收的硬件信息满足判定基准的情况下,切换部116则判定为执行部115是可以执行应用软件执行组111a的可以执行状态,将执行请求向执行部115转送,使执行部115执行应用软件执行组111a。另一方面,在所接收的硬件信息不满足判定基准的情况下,切换部116则判定为执行部115不是可以执行状态,将执行请求向应用软件提供服务器102转送,使应用软件提供服务器102代理执行。另外,在例如因执行部115的机器故障、执行部115与切换部116的连接不良、执行部115的电源OFF等,在一定期间内,无法从执行部115向切换部116发生硬件信息的情况下,切换部116将执行部115判定为不是可以执行状态,将执行请求向应用软件提供服务器102转送,使应用软件提供服务器102代理执行。
认证程序157是基于切换部116从客户终端105接收的执行请求,用CPU144控制是否对该客户终端105允许应用软件执行组111a的执行的认证处理的程序。该情况下,在ROM145内相关联地储存有可以执行应用软件执行组111a的客户终端105的机器名及密码,切换部116基于该机器名及密码来认证客户终端105(认证机构)。当切换部116从客户终端105接收到执行请求时,切换部116即对客户终端105(用户)请求机器名及密码的输入。此后,当用户经由客户终端105,向切换部116输入机器名及密码时,CPU144即与ROM145内的信息对照,仅在一致的情况下认证成功,将执行请求向执行部115或应用软件提供服务器102转送。在不一致的情况下,将该信息向客户终端105发送。这样,由于可以强化应用软件执行系统101的安全性,可以对每个客户终端105限制可以执行的应用软件执行组111a,因此可以将各客户终端105特别化为特定的功能。而且,也可以不采用如上所述地进行认证处理的构成,而设为利用IP地址或MAC地址等施加应用软件执行组111a的执行限制的构成。
另外,应用软件执行装置104与应用软件提供服务器102取得同步,因而控制程序151就用CPU144控制执行部115和应用软件提供服务器102的同步处理。通过像这样取得执行部115与应用软件提供服务器102的同步,就可以将应用软件提供服务器102作为应用软件执行装置104的备份服务器利用,与在办公室内LAN107中追加新的备份装置的构成相比,可以用更低成本来构建系统。而且,在该同步数据中,包括在执行权限的赋予或认证设定中所用的账户信息、为了确保执行部115的故障时的执行处理的延续性而使用的对话信息。
而且,也可以不采用从单一的电源向执行部115及切换部116供给电能的构成,而在执行部115中设置执行部用电源,以及在切换部116中设置切换部用电源。这样,由于即使在执行部用电源发生故障的情况下,也可以从切换部用电源向切换部116供给电能,因此可以更为稳定地使应用软件执行系统101动作。
应用软件提供服务器102具备输入设备168、显示器169、LAN界面161、输入输出界面162、内部总线163、CPU164、ROM165、RAM166及HDD167。另外,在ROM165中储存有控制程序171,在HDD167中储存有用于向应用软件执行装置104提供的提供用的应用软件执行组111a、与应用软件执行组111a相同的代理执行用的代理应用软件执行组111b及代理应用软件执行组111b的代理执行环境172。
控制程序171是用CPU164控制应用软件执行组111a的发送处理、代理执行处理的程序。应用软件执行组111a的发送处理是CPU164根据来自应用软件执行装置104的请求发送储存于HDD167中的应用软件执行组111a的处理(应用软件提供机构)。此外,CPU164在将应用软件执行组111a向应用软件执行装置104发送的同时,在HDD167内复制与所发送的应用软件执行组111a相同的代理应用软件执行组111b。另外,将所复制的代理应用软件执行组111b配设于代理执行环境172中(代理应用软件储存机构)。
此外,CPU164当在应用软件执行装置104的执行部115中无法进行应用软件执行组111a的执行处理,接收到由切换部116转送的来自客户终端105的执行请求时,即在代理执行环境172中执行代理应用软件执行组111b,将执行结果向客户终端105回复(代理执行机构)。该情况下,既可以设为经由切换部116向客户终端105回复的构成,也可以设为向客户终端105直接回复的构成。
管理服务器103(参照编号181~189)及客户终端105(参照编号191~199)由于是与应用软件提供服务器102相同的硬件构成,因此省略说明。
接下来,对应用软件执行系统101中的来自客户终端105的执行请求的转送地址的切换处理及应用软件执行组111a的执行处理的流程进行说明。首先,参照图11的流程图,对来自客户终端105的执行请求的转送地址的切换处理进行说明。
首先,在切换部116中,在将来自客户终端105的执行请求的转送地址设定为朝向执行部115的状态下,当切换部116在一定期间内未从执行部115取得硬件信息时(S101:No),则切换部116判定在执行部115中发生故障,将来自客户终端105的执行请求的转送地址切换为应用软件提供服务器102(S102)。另一方面,当切换部116从执行部115取得硬件信息时(S101:Yes),则判定硬件信息是否满足判定基准(S103)。此后,在不满足判定基准的情况下(S103:No),则切换部116判定执行部115无法执行应用软件执行组111a,将来自客户终端105的执行请求的转送地址切换为应用软件提供服务器102(S102)。在满足判定基准的情况下(S103:Yes),则切换部116将来自客户终端105的执行请求的转送地址以朝向执行部115的状态维持(S104)。
接下来,参照图12的流程图,对应用软件执行组111a的执行处理的流程进行说明。
当切换部116接收到来自客户终端105的应用软件执行组111a的执行请求时(S111),切换部116即认证进行执行请求的客户终端105是否被允许该应用软件执行组111a的执行(S112)。当客户终端105在认证中失败时(S112:No),切换部116即将该信息向客户终端105发送(S113)。另一方面,当客户终端105在认证中成功时(S112:Yes),切换部116即朝向由上述的切换处理设定的转送地址转送执行请求。此时,在执行请求的转送地址为执行部115的情况下(S114:Yes),则将执行请求向执行部115转送,执行部115执行应用软件执行组111a(S115)。另一方面,在执行请求的转送地址并非执行部115的情况下(执行请求的转送地址是应用软件提供服务器102的情况)(S114:No),则将执行请求向应用软件提供服务器102转送,应用软件提供服务器102执行代理应用软件执行组111b(S116)。
以上,根据第二实施方式,由于将应用软件执行装置104分为主要进行应用软件执行组111a的执行处理的执行部115、主要进行数据的转送处理的切换部116,使之各自独立地动作,因此可以将应用软件执行装置104整体的处理负担分散。这样,例如就可以抑制CPU124、144的发热,可以降低应用软件执行装置104的故障率。另外,由于一般来说切换部116与执行部115相比处理量更少,因此可以降低切换部116的故障率,可以使系统稳定地动作。
另外,即使在应用软件执行装置104的执行部115不是可以执行状态的情况下(发生故障等情况),由于切换部116与执行部115独立地动作,因此切换部116也可以将来自客户终端105的执行请求向具有与该应用软件执行组111a相同的代理应用软件执行组111b的应用软件提供服务器102转送,从应用软件提供服务器102取得应用软件执行组111a的执行结果。
另外,在应用软件执行装置104的执行部115发生故障的情况下,由于将由客户终端105对应用软件执行装置104的执行请求自动地向应用软件提供服务器102转送,因此就不需要在每次执行部115发生故障时在客户终端105对执行请求地址进行设定变更。这样,客户终端105就可以意识不到执行部115的故障地取得应用软件执行组111a的执行结果。另外,通过在应用软件执行装置104内设置切换部116,与追加新的机器的构成相比,可以实现节约空间化。
而且,在应用软件执行装置104从多个应用软件提供服务器102接收应用软件执行组111a的发送的情况下,由于对每个应用软件执行组111a进行代理执行处理,因此即使在一个应用软件执行组111a中产生不佳状况,也可以对其他的应用软件执行组111a在办公室内LAN107内执行。另外,由于对每个应用软件执行组111a,在供应商的应用软件提供服务器102中进行备份,因此与将全部的应用软件执行组111a在单一的备份服务器中进行备份的构成相比,故障时的修复作业变得更为容易。
另外,也可以不采用在执行部115的故障时,由应用软件提供服务器102进行代理执行的构成,而采用如下的构成,即,另外设置代理执行专用的代理执行服务器,由该代理执行服务器进行代理执行。
另外,在第二实施方式中,也可以适用第一实施方式。即,在执行部115中,具备配设应用软件执行组111a的执行环境132(应用软件储存机构),在检测到应用软件执行组111a的正常状态的状态下,当有来自客户终端105的应用软件执行组111a的执行请求时,在CPU124中,执行该应用软件执行组111a,将执行结果向客户终端105发送(执行机构),另外也可以是,如果有来自响应程序的响应信号,则切换部116的CPU144检测为正常状态,如果没有响应信号,则检测为异常状态(状态检测机构),在检测出应用软件执行组111a的异常状态的状态下,当有来自客户终端105的应用软件执行组111a的执行请求时,则对应用软件提供服务器102进行代理执行请求(代理执行请求机构)。
接下来,对本发明的第三实施方式进行说明。本实施方式的特征是,将客户终端及应用软件执行装置经由进行数据的中继处理的网关利用第二网络连接。另外,其特征是,通过客户终端指定应用软件而将网关(网关)作为执行请求地址进行执行请求,就不是由客户终端,而是由网关向具有应用软件的服务器转送执行请求,从而将服务器相对于客户终端隐蔽起来。
图13是第三实施方式的应用软件执行系统201的系统构成图。本实施方式的应用软件执行系统201将提供应用软件执行组211(应用软件)的多个销售商(X公司、Y公司)所具有的各应用软件提供服务器202a、202b;管理应用软件执行系统201的平台管理者(P公司)所具有的单一的管理服务器203;进行应用软件提供服务器202方的数据的中继处理的网关服务器210;在网关服务器210中进行应用软件提供服务器202方的数据的认证的认证服务器209;使用应用软件执行组211的多个使用者(A公司、B公司)的办公室(办公室A1、A2、B1、B2)利用互联网206(第一网络)连接。另外,各办公室将执行应用软件执行组211的应用软件执行装置204;对该应用软件执行装置204请求应用软件执行组211的执行的2台客户终端205;进行客户终端205、应用软件执行装置204及互联网206的中继处理的网关208利用办公室内LAN207(第二网络)连接。另外,在网关208与应用软件执行装置204之间,以及在网关208与网关服务器210之间,分别进行封装通信,从而防止办公室内LAN207及互联网206中的恶意的盗听。而且,这里所说的应用软件执行组211是将应用软件程序212和在该应用软件程序212的执行时所使用的至少一个以上的数据库213设为一组的内容。
管理服务器203及应用软件执行装置204是为了实现与第一实施方式的管理服务器3及应用软件执行装置4大致相同的功能而使用的。
应用软件提供服务器202除了根据应用软件执行装置204的请求提供应用软件执行组211以外,在应用软件执行装置204中,产生了应用软件执行组211的不佳状况的情况下,取代应用软件执行装置204而经由网关服务器210向客户终端205回复执行结果。该情况下,应用软件提供服务器202储存与应用软件执行装置204的应用软件执行组211相同的应用软件执行组211,通过执行它而将相同的执行结果向客户终端205回复。这样,就可以将应用软件提供服务器202兼作代理执行服务器使用,与追加新的代理执行服务器的构成相比,可以用更低成本来进行系统构建。应用软件提供服务器202即使在应用软件执行装置204中没有保存应用软件执行组211的情况下,也会执行应用软件执行组211,经由网关208向客户终端205回复执行结果。也就是说,应用软件提供服务器202准备有提供用的应用软件执行组211、执行用的应用软件执行组211。另外,各应用软件程序212由每个销售商在不同的开发环境中制成,各数据库213是与各应用软件程序212对应地构建的数据库。
网关208在办公室内LAN207中进行中继处理,并且作为接收来自客户终端205的执行请求的执行窗口发挥作用。当网关208接收到来自客户终端205的执行请求时,即取代客户终端205向应用软件执行装置204进行执行请求。另外,在应用软件执行装置204中,产生应用软件执行组211的不佳状况的情况下,或没有保存应用软件执行组211的情况下,当从客户终端205收到执行请求时,即对应用软件提供服务器202进行执行请求。也就是说形成如下的构成,即,客户终端205通过指定所需的应用软件执行组211,将网关208作为执行请求地址进行执行请求,则无论应用软件执行装置204的状态如何,都可以经由网关208从应用软件执行装置204或应用软件提供服务器202取得执行结果。
网关服务器210是在网关208与应用软件提供服务器202之间进行中继处理的服务器。也就是说形成如下的构成,即,在网关208与应用软件提供服务器202进行通信的情况下,经由网关服务器210进行通信。另外,认证服务器209是认证从网关208向网关服务器210发送的执行请求的服务器。像这样,由于从网关208发送的执行请求必然经由网关服务器210而被认证服务器209认证,因此就可以防止应用软件提供服务器202的非正常访问,可以强化安全性。
这里,参照图14的网络说明图,对应用软件执行组211的执行请求及执行结果的通信路径进行简单地说明。首先,对正常时的执行请求及执行结果的通信路径进行说明。当客户终端205将执行请求地址设为网关208而对网关208进行执行请求时,网关208即将执行请求的执行请求地址从网关208变更为应用软件执行装置204,将应用软件执行装置204作为发送地址,将执行请求封装而向应用软件执行装置204发送。应用软件执行装置204解除被封装了的执行请求的封装,执行应用软件执行组211。另外,应用软件执行装置204将其执行结果封装而向网关208发送。网关208解除被封装了的执行结果的封装,向客户终端205发送执行结果。
下面,对异常时的执行请求及执行结果的通信路径进行说明。当客户终端205对网关208进行执行请求时,网关208即将执行请求的执行请求地址从网关208变更为应用软件提供服务器202,将网关服务器210作为发送地址,将执行请求封装而向网关服务器210发送。网关服务器210接触被封装了的执行请求的封装,向应用软件提供服务器202转送。应用软件提供服务器202基于从网关服务器202接收的执行请求,执行应用软件执行组211,将执行结果向网关服务器210发送。当网关服务器210接收到执行结果时,即将其封装而向网关208发送。网关208接触被封装了的执行结果的封装,向客户终端205发送执行结果。
接下来,参照图15的控制构成图对构成本实施方式的应用软件执行系统201的各装置(应用软件提供服务器202、管理服务器203、网关服务器210、认证服务器209、应用软件执行装置204、网关208及客户终端205)的控制构成进行说明。
网关208具备两个通信界面281a、281b、输入输出界面282、内部总线283、CPU284(Central Processing Unit)、ROM285(Read Only Memory)、RAM286(Random Access Memory)及HDD287(Hard Disk Drive)。另外,在ROM285中储存有控制程序及网关监视工具(图示略),在HDD287中储存有应用软件保存地址表251。
两个通信界面281a、281b中的通信界面281a与应用软件执行装置204的通信界面221直接连接,通信界面281b经由办公室内LAN207与客户终端205及网关服务器210连接。
网关用监视工具基于从应用软件执行装置204经常性地或定期地发送的硬件信息,判定应用软件执行装置204是否可以执行应用软件执行组211(执行判定机构)。该情况下,在ROM285内,储存有用于判定应用软件执行装置204是否可以执行应用软件执行组211的判定基准,根据从应用软件执行装置204接收的硬件信息是否满足该判定基准,网关208判定应用软件执行装置204的状态。也就是说,在从应用软件执行装置204接收的硬件信息满足判定基准的情况下,网关208判定应用软件执行装置204是可以执行应用软件执行组211的可以执行状态,在不满足判定基准的情况下,网关208判定应用软件执行装置204不是可以执行应用软件执行组211的状态。
而且,这里所说的硬件信息是包括应用软件执行装置204的CPU224的温度及使用率、风扇的转速、RAM226的存储器使用量及应用软件执行装置204的动作电压等的信息。另外,所谓判定基准是应用软件执行装置204为了稳定地执行应用软件执行组211而需要的最低限度的CPU224的温度、使用率、风扇的转速、RAM226的存储器使用量及应用软件执行装置204的动作电压等。
图16(a)中所示的应用软件保存地址表251是在决定应用软件执行组211的执行请求地址之时所使用的,将应用软件执行组名与表示应用软件执行组211的保存地址的URI相关联地储存网关208参照该应用软件保存地址表251,基于由客户终端205指定的应用软件执行组名来决定执行请求地址。图16(a)的例子中表示,「应用软件A」、「应用软件B 」、「应用软件C」分别保存在「应用软件执行装置」及「应用软件提供服务器A」、「应用软件提供服务器B」、「应用软件提供服务器C」中,「应用软件D」仅保存在「应用软件提供服务器D」中。而且,URI向应用软件保存地址表251的登录既可以是网关208自动地从管理服务器203取得应用软件执行组211的URI等的构成,也可以是用户任意地登录。
控制程序基于网关用监视工具的判定结果及储存于应用软件保存地址表251中的应用软件执行组211的保存地址,用CPU284来控制应用软件执行组211的执行请求地址的变更处理。当从客户终端205接收到网关208方的执行请求时,网关208首先即参照应用软件保存地址表251,判定在应用软件执行装置204中是否保存有客户终端205所指定的应用软件执行组211(保存判定机构),继而考虑应用软件执行装置204是否是可以执行状态而变更应用软件执行组211的执行请求地址(请求地址变更机构)。
也就是说,在判定在应用软件执行装置204中保存有应用软件执行组211,并且判定硬件信息满足判定基准的情况下,将执行请求地址从网关208变更为应用软件执行装置204,在判定在应用软件执行装置204中没有保存应用软件执行组211的情况下,或在判定硬件信息不满足判定基准的情况下,将执行请求地址从网关208变更为具有该应用软件执行组211的应用软件提供服务器202。
例如,当客户终端205指定「应用软件A」,将网关208作为执行请求地址进行执行请求时,网关208在应用软件执行装置204处于可以执行状态的情况下,将执行请求地址从「网关」变更为「应用软件执行装置」(参照图16(b)),在应用软件执行装置204不是可以执行状态的情况下,将执行请求地址从「网关」变更为「应用软件提供服务器A」(参照图16(c))。另外,当客户终端205指定未保存在应用软件执行装置204中的「应用软件D」,将网关208作为执行请求地址进行执行请求时,则网关208将执行请求地址从「网关」变更为「应用软件提供服务器D」(参照图16(a))。
另外,在控制程序中,装有在与应用软件执行装置204及网关服务器210的封装通信中所利用的封装/解除程序。这里,参照图17(a)、(b)对封装构成进行简单说明。图17(a)表示有执行请求或执行结果的消息数据253,由包括发送地址的消息标题255a、包括应用软件执行组211的执行命令或响应结果的消息主体256a构成。图17(b)表示将消息数据253封装了的封装数据254。封装数据254由包括发送地址及认证信息的消息标题255b、插入消息数据253的消息主体256b构成。也就是说,封装是通过将消息数据253插入封装数据254之中而实现的。
接下来,对利用网关208的封装处理及解封装处理进行说明。首先,对网关208被从客户终端205发送了执行请求的情况下的封装处理进行说明。当网关208从客户终端205接收到执行请求时,即如上所述地参照应用软件保存地址表251来变更执行请求地址。此后,将来自客户终端205的执行请求插入消息主体256b中,对其将作为发送地址的应用软件执行装置204或网关服务器210的URI、作为认证信息的认证ID及密码设定于消息标题255b中,将执行请求封装(执行请求封装机构)。此后,网关208通过将封装了的执行请求向作为发送地址指定的应用软件执行装置204或网关服务器210发送,而取代客户终端205进行执行请求(网关侧执行请求机构)。
下面,对网关208从应用软件执行装置204或网关服务器210接收到封装了的执行结果的情况下的解封装处理进行说明。当网关208从应用软件执行装置204或网关服务器210接收到封装了的执行结果时,即将作为发送地址设定了网关208的URI的消息标题255b取出,解除封装(解封装机构)。此后,网关208将解除了封装的执行结果向客户终端205发送。
应用软件执行装置204具备通信界面221、输入输出界面222、内部总线223、CPU224、ROM225、RAM226及HDD227。另外,在ROM225中储存有控制程序及执行装置用监视工具,在HDD227中,储存有多个为了执行应用软件执行组211而构建的执行环境232。执行环境232是与第一实施方式大致相同的功能(参照图3)。
执行装置用监视工具是将硬件信息经常性地或定期地向网关208发送的工具。此外,网关208当从应用软件执行装置204接收到硬件信息时,即基于所接收的信息,判定应用软件执行装置204的状态。
控制程序是用CPU224来控制应用软件执行组211的执行处理的程序。另外,在控制程序中,插入了在与网关208的封装通信中所利用的封装/解除程序及认证程序。应用软件执行装置204当从网关208接收到封装了的执行请求时,仅在利用认证程序认证成功的情况下解除封装,基于执行请求执行应用软件执行组211,将其执行结果封装而向网关208发送(执行机构)。
具体来说,在ROM225内作为认证信息相关联地储存有可以执行应用软件执行组211的认证ID及密码,应用软件执行装置204当从网关208接收到封装了的执行请求时,即对照设定于消息标题255b中的认证信息和ROM225内的认证信息而进行认证(认证机构)。在认证信息一致的情况下,认证成功,将作为发送地址设定了应用软件执行装置204的URI的消息标题255b取出,解除封装。此后,应用软件执行装置204执行应用软件执行组211,将其执行结果插入消息主体256b中,对其加装作为发送地址设定了网关208的URI的消息标题255b而封装,将封装了的执行结果向网关208发送。另一方面,在认证信息不一致的情况下,将认证请求向网关208发送。而且,由于一旦在一次认证中成功,就赋予认证完成信息,因此从下次开始在应用软件执行装置204中就可以省略认证处理。
网关服务器210具备通信界面291、输入输出界面292、内部总线293、CPU294、ROM295、RAM296及HDD297。另外,在ROM295中储存有控制程序。
控制程序是用CPU294控制数据的中继处理的程序。另外,在控制程序中,插入了在与网关208的封装通信中所利用的封装/解除程序及认证程序。网关服务器210当从网关208接收到封装了的执行请求时,即利用认证服务器209进行认证,仅在认证成功的情况下解除封装而将执行请求向应用软件提供服务器202转送。另外,当从应用软件提供服务器202接收到执行结果时,即将执行结果封装而向网关208转送(转送机构)。
具体来说,在认证服务器209的ROM295内作为认证信息相关联地储存有可以执行应用软件执行组211的认证ID及密码,网关服务器210向认证服务器209发送认证信息,在认证服务器209中进行认证处理。此外,当认证服务器209从网关服务器210接收到认证信息时,即对照设定于消息标题255b中的认证信息和认证服务器209的认证信息而进行认证。在认证信息一致的情况下,判定认证成功,将作为发送地址设定了网关服务器210的URI的消息标题255b取出,解除封装。一旦解除封装,即向应用软件提供服务器202发送执行请求。在不一致的情况下,判定认证失败,将认证请求向网关208发送。另外,当从应用软件提供服务器202接收到执行结果时,即将该执行结果插入消息主体256b,加装作为发送地址设定了网关208的URI的消息标题255b而封装,将封装了的执行结果向网关208转送。而且,由于一旦在一次认证中成功,就赋予认证完成信息,因此从下次开始就可以省略认证服务器209的认证处理。
应用软件提供服务器202具备输入设备248、显示器249、通信界面241、输入输出界面242、内部总线243、CPU244、ROM245、RAM246及HDD247。另外,在ROM245中储存有控制程序,在HDD247中储存有用于向应用软件执行装置204提供的提供用的应用软件执行组211、与提供用的应用软件执行组211相同的执行用的应用软件执行组211及用于代理执行应用软件执行组211的代理执行环境252。
控制程序是用CPU244来控制应用软件执行组211的发送处理、代理执行处理理的程序。应用软件执行组211的发送处理是CPU244根据来自应用软件执行装置204的请求来发送储存于HDD247中的应用软件执行组211的处理(应用软件提供机构)。此外,CPU244在将应用软件执行组211向应用软件执行装置204发送的同时,在HDD247内复制与所发送的应用软件执行组211相同的代理应用软件执行组211。另外,将所复制的代理应用软件执行组211配设于代理执行环境252中。
此外,CPU244当在应用软件执行装置204中无法进行应用软件执行组211的执行处理,而接收到由网关服务器210转送的执行请求时,即在代理执行环境252中执行应用软件执行组211,经由网关服务器210向客户终端205回复执行结果(代理执行机构)。
管理服务器203(参照编号261~269)、认证服务器209(参照编号301~306)及客户终端205(参照编号271~279)由于是与应用软件提供服务器202基本相同的硬件构成,因此省略说明。
接下来,参照图18的流程图,对应用软件执行系统201中的应用软件执行组211的执行处理的流程进行说明。
当客户终端205指定应用软件执行组211,将执行请求地址设为网关208而对网关208进行执行请求时(S201),网关208即参照应用软件保存地址表251,判定在应用软件执行装置204中是否保存有所指定的应用软件执行组211(S202)。当网关208判定在应用软件执行装置204中没有保存所指定的应用软件执行组211时(S202:No),则将执行请求地址从网关208变更为应用软件提供服务器202(S205)。当判定在应用软件执行装置204中保存有所指定的应用软件执行组211时(S202:Yes),则判定应用软件执行装置204是否是可以执行状态(S203)。当网关208判定应用软件执行装置204不是可以执行状态时(S203:No),则将执行请求地址从网关208变更为应用软件提供服务器202(S205)。当判定应用软件执行装置204是可以执行状态时(S203:Yes),则将执行请求地址从网关208变更为应用软件执行装置204(S204)。
在执行请求地址被变更为应用软件执行装置204的情况下,网关208将执行请求封装而向应用软件执行装置204发送(S206)。当应用软件执行装置204接收到封装了的执行请求时,即进行认证处理(S207)。在认证失败的情况下(S207:No),应用软件执行装置204对网关208进行认证请求(S209)。在认证成功的情况下(S207:Yes),就解除执行请求的封装,执行应用软件执行组211(S208),将其执行结果封装而向网关208发送(S210)。当网关208接收到封装了的执行结果时,即解除封装而向客户终端205发送(S211)。
另一方面,在执行请求地址被变更为应用软件提供服务器202的情况下,网关208将执行请求封装而向网关服务器210发送(S212)。当网关服务器210接收到封装了的执行请求时,即对认证服务器209进行认证请求(S213)。在认证服务器209中认证失败的情况下(S213:No),网关服务器210对网关208进行认证请求(S215)。在认证服务器209中认证成功的情况下(S213:Yes),就解除执行请求的封装,向应用软件提供服务器202转送(S214)。应用软件提供服务器202基于所接收的执行请求代理执行应用软件执行组211(S216),将执行结果向网关服务器210发送(S217)。网关服务器210将所接收的执行请求封装而向网关208发送(S218)。当网关208接收到封装了的执行结果时,即解除封装而向客户终端205发送(S211)。
以上,根据第三实施方式,由于仅通过客户终端205指定所需的应用软件执行组211,对网关208进行执行请求,网关208就会自动地将网关208方的执行请求向具有该应用软件执行组211的服务器(应用软件执行装置204、应用软件提供服务器202)转送,因此客户终端205(用户)就可以意识不到应用软件执行组211的保存地址地取得应用软件执行组211的执行结果。另外,由于将网关208作为客户终端205的网关,因此就可以将服务器(应用软件执行装置204、应用软件提供服务器202)隐蔽,可以构建柔性的网络。另外,即使追加或更换服务器,由于只要对网关208追加设定,则来自客户终端205的访问地址就不会改变,因此可以容易地进行系统变更。
另外,即使在应用软件执行装置204中没有应用软件的情况下或应用软件执行装置204发生故障时,由于网关208自动地将执行请求的转送地址切换为应用软件提供服务器202,因此就不需要在每次不佳状况时在客户终端205中对执行请求地址进行设定变更。
而且,本实施方式中,虽然采用除了网关服务器210以外,还设置了认证服务器209及应用软件提供服务器202的构成,然而也可以在网关服务器210中具备认证处理或执行处理的功能而构成。
另外,在应用软件执行装置204中产生不佳状况的情况下,也可以不采用由应用软件提供服务器202代理执行的构成,而采用如下的构成,即,另外设置代理执行专用的代理执行服务器,由该代理执行服务器进行代理执行。
另外,在网关208与网关服务器210之间的封装通信中,也可以还组合使用加密。这样,在网络206中,可以通过防止泄漏、删改而进一步强化安全性。
以上虽然给出三个实施方式,然而也可以将上述的各实施方式中所示的应用软件执行系统1、101、201的各功能作为软件程序提供。另外,可以将该程序保存在记录介质(图示略)中提供。作为记录介质,可以使用CD-ROM、flash ROM、存储卡(Compact Flash(注册商标)、Smart Media、Memory Disk等)、光磁盘、多功能数码光盘及软盘等。
另外,也可以不依照上述所示的实施例,而在不脱离本发明的主旨的范围内,对应用软件执行系统1、101、201的处理工序进行适当变更。

Claims (16)

1.一种应用软件执行系统,将提供应用软件的应用软件提供服务器、和执行从上述应用软件提供服务器取得的上述应用软件的应用软件执行装置利用第一网络连接,并且将上述应用软件执行装置、和对该应用软件执行装置请求上述应用软件的执行的客户终端利用第二网络连接,其特征是,
上述应用软件执行装置具备:
储存从上述应用软件提供服务器取得的上述应用软件的应用软件储存机构;
检测所储存的上述应用软件处于正常状态或异常状态的状态检测机构;
执行机构,其在上述状态检测机构检测出上述应用软件的正常状态的状态下,在有来自上述客户终端的上述应用软件的执行请求时,执行该应用软件,并将其执行结果向上述客户终端发送;
代理执行请求机构,其在上述状态检测机构检测出上述异常状态的状态下,在有来自上述客户终端的上述应用软件的执行请求时,对上述应用软件提供服务器请求代理执行,
上述应用软件提供服务器具备:
储存与所提供的上述应用软件相同的代理应用软件的代理应用软件储存机构;
基于上述代理执行的请求执行上述代理应用软件并将其执行结果向上述客户终端发送的代理执行机构。
2.根据权利要求1所述的应用软件执行系统,其特征是,
上述应用软件执行装置还具备将包括上述应用软件的账户信息及对话信息的同步数据向上述应用软件提供服务器发送的同步数据发送机构,
上述应用软件提供服务器基于所接收的上述应用软件的同步数据,将上述代理应用软件更新。
3.根据权利要求1或2所述的应用软件执行系统,其特征是,上述应用软件提供服务器还具备将包括上述代理应用软件的账户信息及对话信息的同步数据向上述应用软件执行装置发送的代理同步数据发送机构,
上述应用软件执行装置基于所接收的上述代理应用软件的同步数据,将上述应用软件更新。
4.根据权利要求1所述的应用软件执行系统,其特征是,
上述应用软件执行装置由执行部和切换部构成,其中,
执行部具有上述应用软件储存机构、上述执行机构,
切换部与上述执行部独立地动作,具有上述状态检测机构;上述代理执行请求机构;判定上述执行部是否是可以执行状态的判定机构;接收来自上述客户终端的执行请求的接收机构;转送地址切换机构,其在上述执行部是可以执行状态的情况下,将所接收的上述执行请求向上述执行部转送,在上述执行部不是可以执行状态的情况下,将所接收的上述执行请求向上述应用软件提供服务器转送。
5.根据权利要求4所述的应用软件执行系统,其特征是,
上述执行部还具有用于对上述执行部进行电源供给的执行部用电源电路,
上述切换部还具有用于对上述切换部进行电源供给的切换部用电源电路。
6.根据权利要求4或5所述的应用软件执行系统,其特征是,
上述切换部具有认证可以执行上述应用软件的上述客户终端的认证机构,
仅在上述认证成功的情况下,转送上述执行请求。
7.根据权利要求1所述的应用软件执行系统,其特征是,
上述客户终端及上述应用软件执行装置经由进行数据的中继处理的网关利用上述第二网络连接,并且上述网关与上述应用软件提供服务器被利用上述第一网络连接,
上述客户终端具备客户侧执行请求机构,其指定成为执行对象的上述应用软件,将上述网关作为执行请求地址进行执行请求,
上述网关具备:
保存判定机构,其参照储存上述应用软件的保存地址的数据库,判定在上述应用软件执行装置中是否保存有所指定的上述应用软件;
执行判定机构,其判定上述应用软件执行装置是否是可以执行状态;
请求地址变更机构,其在从上述客户终端收到上述执行请求后,在利用上述保存判定机构判定在上述应用软件执行装置中保存有所指定的上述应用软件,并且判定上述应用软件执行装置是可以执行状态的情况下,将上述执行请求地址变更为上述应用软件执行装置,在利用上述保存判定机构判定在上述应用软件执行装置中没有保存所指定的上述应用软件的情况下,或在判定上述应用软件执行装置并非可以执行状态的情况下,将上述应用软件的执行请求地址变更为上述应用软件提供服务器;
网关侧执行请求机构,其对变更了的上述执行请求地址进行执行请求,
上述应用软件执行装置中的上述执行机构及上述应用软件提供服务器中的上述代理执行机构基于来自上述网关的执行请求执行上述应用软件,将其执行结果经由上述网关向上述客户终端发送。
8.根据权利要求7所述的应用软件执行系统,其特征是,
还加上网关服务器,其经由上述第一网络与上述网关连接,并且在上述网关与上述应用软件提供服务器之间进行数据的中继处理,
上述网关还具备:
执行请求封装机构,其在上述请求地址变更机构将上述应用软件的执行请求地址变更为上述应用软件执行装置的情况下,通过将上述执行请求封装,而将上述执行请求地址的网关指定为上述应用软件执行装置,在上述请求地址变更机构将上述应用软件的执行请求地址变更为上述应用软件提供服务器的情况下,通过将上述执行请求封装,而将上述执行请求地址的网关指定为上述网关服务器;
解封装机构,其将所接收的执行结果解封装而向上述客户终端发送,
上述应用软件执行装置中的上述执行机构是将来自上述网关的执行请求解封装,执行上述应用软件,将其执行结果封装而向上述网关发送的机构,
上述网关服务器具备转送机构,其将来自上述网关的上述执行请求解封装,向上述应用软件提供服务器转送,并且将来自上述应用软件提供服务器的执行结果封装而向上述网关转送,
上述应用软件提供服务器中的上述代理执行机构基于由上述网关服务器转送的执行请求执行上述应用软件,将其执行结果向上述网关服务器发送。
9.根据权利要求8所述的应用软件执行系统,其特征是,
上述执行请求封装机构是除了指定上述执行请求地址的网关以外,还对上述执行请求赋予认证信息的机构,
上述应用软件执行装置还具备基于上述认证信息进行上述执行请求的认证的认证机构,
上述执行机构仅对认证成功的上述执行请求允许应用软件的执行。
10.根据权利要求8或9所述的应用软件执行系统,其特征是,
还具备认证服务器,其经由上述第一网络与上述网关服务器连接,进行上述执行请求的认证,
上述执行请求封装机构是除了指定上述执行请求地址的网关以外,还对上述执行请求赋予认证信息的机构,
上述网关服务器中的上述转送机构是在来自上述网关的上述执行请求解封装时,利用上述认证服务器认证的机构,
上述应用软件提供服务器仅对在上述认证服务器中认证成功的上述执行请求允许应用软件的执行。
11.一种计算机,其特征是,作为权利要求1至10中任意一项所述的应用软件执行系统中所用的上述应用软件执行装置或上述应用软件提供服务器发挥作用。
12.一种应用软件执行装置,利用第一网络与提供应用软件的应用软件提供服务器连接,并且利用第二网络与请求上述应用软件的执行的客户终端连接,执行从上述应用软件提供服务器取得的上述应用软件,其特征是,
上述应用软件提供服务器是储存与所提供的上述应用软件相同的代理应用软件,基于来自上述应用软件执行装置的代理执行的请求,执行上述代理应用软件,将其执行结果向上述客户终端发送的服务器,
具备:
储存从上述应用软件提供服务器取得的上述应用软件的应用软件储存机构;
检测所储存的上述应用软件处于正常状态或异常状态的状态检测机构;
执行机构,其在上述状态检测机构检测出上述应用软件的正常状态的状态下,在有来自上述客户终端的上述应用软件的执行请求时,执行该应用软件,并将其执行结果向上述客户终端发送;
代理执行请求机构,其在上述状态检测机构检测出上述异常状态的状态下,在有来自上述客户终端的上述应用软件的执行请求时,对上述应用软件提供服务器请求代理执行。
13.根据权利要求12所述的应用软件执行装置,其特征是,
由执行部和切换部构成,其中,
执行部具有上述应用软件储存机构、上述执行机构,
切换部与上述执行部独立地动作,具有上述状态检测机构;上述代理执行请求机构;判定上述执行部是否是可以执行状态的判定机构;接收来自上述客户终端的执行请求的接收机构;转送地址切换机构,其在上述执行部是可以执行状态的情况下,将所接收的上述执行请求向上述执行部转送,在上述执行部不是可以执行状态的情况下,将所接收的上述执行请求向上述应用软件提供服务器转送。
14.一种应用软件执行系统的控制方法,是利用第一网络将提供应用软件的应用软件提供服务器与执行从上述应用软件提供服务器取得的上述应用软件的应用软件执行装置连接,并且利用第二网络将上述应用软件执行装置与对该应用软件执行装置请求上述应用软件的执行的客户终端连接的应用软件执行系统的控制方法,其特征是,
上述应用软件执行装置执行:
储存从上述应用软件提供服务器取得的上述应用软件的步骤;
检测所储存的上述应用软件处于正常状态或异常状态的步骤;
在上述状态检测机构检测出上述应用软件的正常状态的状态下,在有来自上述客户终端的上述应用软件的执行请求时,执行该应用软件,并将其执行结果向上述客户终端发送的步骤;
在上述状态检测机构检测出上述异常状态的状态下,在有来自上述客户终端的上述应用软件的执行请求时,对上述应用软件提供服务器请求代理执行的步骤,
上述应用软件提供服务器执行:
储存与所提供的上述应用软件相同的代理应用软件的步骤;
基于上述代理执行的请求,执行上述代理应用软件,并将其执行结果向上述客户终端发送的步骤。
15.根据权利要求14所述的应用软件执行系统的控制方法,其特征是,
上述应用软件执行装置由基于来自上述客户终端的执行请求执行应用软件的执行部和与上述执行部独立地动作并切换上述执行请求的发送地址的切换部构成,
上述切换部执行:
判定上述执行部是否是可以执行状态的步骤;
接收来自上述客户终端的执行请求的步骤;
在上述执行部是上述可以执行状态的情况下,将所接收的上述执行请求向上述执行部转送,在上述执行部不是上述可以执行状态的情况下,将所接收的上述执行请求向上述应用软件提供服务器转送的步骤。
16.根据权利要求14所述的应用软件执行系统的控制方法,其特征是,
上述客户终端及上述应用软件执行装置经由进行数据的中继处理的网关利用上述第二网络连接,并且上述网关与上述应用软件提供服务器被利用上述第一网络连接,
上述客户终端执行指定成为执行对象的上述应用软件,将上述网关作为执行请求地址进行执行请求的步骤,
上述网关执行:
参照储存上述应用软件的保存地址的数据库,判定在上述应用软件执行装置中是否保存有所指定的上述应用软件的步骤;
判定上述应用软件执行装置是否是可以执行状态的步骤;
在从上述客户终端收到上述执行请求后,在判定在上述应用软件执行装置中保存有所指定的上述应用软件,并且判定上述应用软件执行装置是可以执行状态的情况下,将上述执行请求地址变更为上述应用软件执行装置,在判定在上述应用软件执行装置中没有保存所指定的上述应用软件的情况下,或在判定上述应用软件执行装置并非可以执行状态的情况下,将上述应用软件的执行请求地址变更为上述应用软件提供服务器的步骤;
对变更了的上述执行请求地址进行执行请求的步骤,
上述应用软件执行装置及上述应用软件提供服务器基于来自上述网关的执行请求执行上述应用软件,将其执行结果经由上述网关向上述客户终端发送。
CN2008100029678A 2007-01-30 2008-01-11 应用软件执行系统、计算机、应用软件执行装置、应用软件执行系统的控制方法及程序 Expired - Fee Related CN101237379B (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
JP2007018871A JP5341317B2 (ja) 2007-01-30 2007-01-30 アプリケーション実行システム、コンピュータ、アプリケーション実行システムのアプリケーション実行方法およびプログラム
JP2007018871 2007-01-30
JP2007-018871 2007-01-30
JP2007022672 2007-02-01
JP2007022672A JP5243721B2 (ja) 2007-02-01 2007-02-01 アプリケーション実行システム、切替装置、アプリケーション実行システムのアプリケーション実行方法およびプログラム
JP2007-022672 2007-02-01
JP2007043399A JP5018128B2 (ja) 2007-02-23 2007-02-23 ネットワークシステム、ネットワークシステムの通信制御方法およびプログラム
JP2007-043399 2007-02-23
JP2007043399 2007-02-23

Publications (2)

Publication Number Publication Date
CN101237379A CN101237379A (zh) 2008-08-06
CN101237379B true CN101237379B (zh) 2011-04-27

Family

ID=39729224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100029678A Expired - Fee Related CN101237379B (zh) 2007-01-30 2008-01-11 应用软件执行系统、计算机、应用软件执行装置、应用软件执行系统的控制方法及程序

Country Status (2)

Country Link
JP (1) JP5341317B2 (zh)
CN (1) CN101237379B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5565153B2 (ja) * 2010-07-07 2014-08-06 富士通株式会社 プログラム、情報処理装置、及び情報処理装置の制御方法
JP6095091B2 (ja) 2012-03-24 2017-03-15 日本電気株式会社 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム
JP6740600B2 (ja) * 2015-12-09 2020-08-19 日本電気株式会社 プログラム実行システム、プログラム実行方法、および、プログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1084377A (ja) * 1996-09-09 1998-03-31 Oki Electric Ind Co Ltd 複数サーバの相互バックアップ方法及びルーチング方法
JP3768775B2 (ja) * 2000-04-27 2006-04-19 三菱電機株式会社 バックアップ装置及びバックアップ方法
US6990606B2 (en) * 2000-07-28 2006-01-24 International Business Machines Corporation Cascading failover of a data management application for shared disk file systems in loosely coupled node clusters
JP2002259355A (ja) * 2001-02-28 2002-09-13 Hitachi Ltd 多重系システム
JP2004295334A (ja) * 2003-03-26 2004-10-21 Nippon Telegr & Teleph Corp <Ntt> 電子計算システム、サーバ装置およびプログラム
JP2005202698A (ja) * 2004-01-15 2005-07-28 Nec Corp サービス提供システム、計算機及びリポジトリサービス制御プログラム
US7657657B2 (en) * 2004-08-13 2010-02-02 Citrix Systems, Inc. Method for maintaining transaction integrity across multiple remote access servers
JP2008021145A (ja) * 2006-07-13 2008-01-31 Seiko Epson Corp ネットワークシステム、コンピュータ、ネットワークシステムのアプリケーション提供方法およびプログラム
JP5011927B2 (ja) * 2006-10-02 2012-08-29 セイコーエプソン株式会社 アプリケーション実行システム、コンピュータ、アプリケーション実行システムのアプリケーション実行方法およびプログラム

Also Published As

Publication number Publication date
CN101237379A (zh) 2008-08-06
JP2008186222A (ja) 2008-08-14
JP5341317B2 (ja) 2013-11-13

Similar Documents

Publication Publication Date Title
US9766914B2 (en) System and methods for remote maintenance in an electronic network with multiple clients
US8788803B2 (en) Self-encryption process
US7016950B2 (en) System and method for restricting data transfers and managing software components of distributed computers
US20120311339A1 (en) Method for storing data on a peer-to-peer network
US20150006895A1 (en) Distributed network system
AU2010217154A1 (en) System and method for securely communicating with electronic meters
CN111818081B (zh) 虚拟加密机管理方法、装置、计算机设备和存储介质
WO2008065345A1 (en) Cyber cash
CN101237379B (zh) 应用软件执行系统、计算机、应用软件执行装置、应用软件执行系统的控制方法及程序
WO2001093503A2 (en) Method and system for instant messaging
CN111869165B (zh) 用于控制和/或监控装置的方法和控制系统
GB2446170A (en) Shared access to private files in a distributed network
WO2008065343A1 (en) Shared access to private files
WO2020210708A1 (en) Virtual mobile device system and method thereof
CN114157470B (zh) 一种令牌管理方法和装置
CN105491118B (zh) 一种航电以太网数据加载系统
CN100574191C (zh) 局域网内Direct Client系统认证的方法
WO2008065347A2 (en) Mssan
CN117609979A (zh) 一种商用系统与企业认证系统集成方法、装置、设备及存储介质
CN118014580A (zh) 业务处理方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110427

Termination date: 20210111