发明内容
本发明所要解决的技术问题是提供一种实现网络应用软件web服务使用的方法及系统,能够在web服务崩溃时也不影响软件的使用。
为了解决上述技术问题,本发明提供了一种实现网络应用软件web服务使用的系统,包括用户终端、Web服务使用维护装置以及两个以上Web服务设备,其中:
用户终端,用于享用作为主服务设备的Web服务设备提供的Web服务;
Web服务使用维护装置,嵌入在网络应用软件主程序中或作为一个物理实体设备;用于通过IP分配模块为Web服务设备分配IP,通过Socket转换模块根据其中一个选为主服务设备的该Web服务设备的IP将被初始默认的主服务设备接通用户终端,并将主服务设备的该Web服务设备的IP提供给Web服务状态检测模块;通过Web服务状态检测模块每隔一段时间检测Web服务设备内Web服务的存活状态,当检测到Web服务的存活状态为异常时,向Socket转换模块输出携带有状态正常的Web服务设备的IP的设备切换命令;Socket转换模块根据输入的设备切换命令,将存活状态异常的Web服务设备切换为状态正常的Web服务设备与用户终端接通;
Web服务设备,用于同时装载具有Web服务的网络应用程序,当与用户终端接通时提供Web服务,未与用户终端接通时作为备用设备待命。
进一步地,
当Web服务状态检测模块检测到原作为主服务设备的Web服务的存活状态恢复为正常时,向Socket转换模块输出携带有该作为主服务设备的IP的设备恢复命令;
Socket转换模块根据输入的设备恢复命令,切换原作为主服务设备的Web服务设备与用户终端接通。
为了解决上述技术问题,本发明提供了一种实现网络应用软件web服务使用的方法,包括:
将同样的具有web服务的网络应用程序同时装载于两个以上Web服务设备中,并为两个以上Web服务设备分配IP;
将被初始默认为主服务设备的Web服务设备通过Socket转换模块与用户终端接通,提供Web服务;
每隔一段时间检测Web服务设备内Web服务的存活状态,当检测到Web服务的存活状态为异常时,通过Socket转换模块将存活状态异常的Web服务设备切换为状态正常的另一个Web服务设备与用户终端接通,继续提供Web服务。
进一步地,该方法还包括:
当检测到原作为主服务设备的Web服务的存活状态恢复为正常时,通过Socket转换模块切换原作为主服务设备的Web服务设备与用户终端接通。
本发明将web服务程序和应用主程序同时运行在多台网络服务设备上,利用Socket通信选通其中一个作为主服务设备IP面向用户,并在检测到该主服务设备运行故障时,选通另一服务设备作为主服务设备而替换掉出故障的服务设备。由此,可实现即便web服务崩溃也不影响软件的继续使用,且可使用户几乎感觉不到上述替换过程,从而大大提高用户对软件的使用体验。
具体实施方式
以下结合附图和优选实施例对本发明的技术方案进行详细地阐述。应该理解,以下例举的实施例仅用于说明和解释本发明,而不构成对本发明技术方案的限制。
在对本发明的技术方案进行介绍之前,先简单地介绍一下Socket通信技术。Socket可以看成在两个设备(可以是两个软件程序)之间进行通信连接中的一个端点,其中一个设备将一段信息写入Socket中,该Socket将这段信息通过另外一个Socket将这段信息能传送到另一个设备中。
如图1所示,是本发明提供的实现网络应用软件web服务使用的系统实施例,包括用户终端、Web服务使用维护装置以及两个以上(包括两个)Web服务设备,其中:
用户终端,用于享用作为主服务设备Web服务设备提供的Web服务;
Web服务使用维护装置,用于为Web服务设备分配IP,将其中一个选为主服务设备的Web服务设备通过Socket转换模块接通用户终端;
Web服务设备,用于同时装载具有Web服务的同样的网络应用程序,当与用户终端接通时向用户提供Web服务,未与用户终端接通时作为备用设备待命。
其实,许多大型企业一般都会具有多个网络服务设备,因此可利用这些网络服务设备作为上述主服务设备和备用服务设备,而不需要额外地添加许多设备。
为了节省网络资源,可以只启动作为主服务设备的Web服务设备运行,而将作为备用服务设备的Web服务设备停机待命,当被选为主服务设备需要切换时再启动其运行。
在上述系统实施例中,Web服务使用维护装置还包括与Socket转换模块连接的IP分配模块,其中:
IP分配模块,用于将为Web服务设备分配的IP提供给Socket转换模块;
Socket转换模块根据Web服务设备的IP将初始默认为主服务设备的Web服务设备与用户终端接通。
如图1的①所示,中间的实线表示将初始默认为主服务设备的Web服务设备1与用户终端接通,上边的虚线表示作为备用服务设备的其它Web服务设备未与用户终端接通,处于待命状态。
在上述系统实施例中,Web服务使用维护装置还包括与Socket转换模块连接的Web服务状态检测模块,其中:
Socket转换模块将作为主服务设备的Web服务设备的IP提供给Web服务状态检测模块;
Web服务状态检测模块,用于每隔一段时间检测Web服务设备内Web服务的存活状态。
在上述系统实施例中,
当Web服务状态检测模块检测到Web服务的存活状态为异常(譬如主服务设备宕机或一Web服务崩溃)时,向Socket转换模块输出携带有状态正常的Web服务设备的IP的设备切换命令;
譬如,Web服务状态检测模块(嵌入在应用主程序中)通过判断不能接收到Web服务所下发的命令,检测到Web服务的存活状态为异常的。
Socket转换模块根据输入的设备切换命令,将存活状态异常的Web服务设备切换为相应的状态正常的Web服务设备与用户终端接通。
在上述系统实施例中,
当Web服务状态检测模块检测到原作为主服务设备的Web服务的存活状态恢复为正常时,向Socket转换模块输出携带有该Web服务设备的IP的设备恢复命令;
Socket转换模块根据输入的设备恢复命令,切换原作为主服务设备的Web服务设备与用户终端接通。
如图1的②所示,上边的实线表示将处于待命状态的状态正常的Web服务2设备被选为主服务设备与用户终端接通,中间的虚线表示状态异常的Web服务设备1与用户终端断开,处于维修状态。
本发明的Web服务使用维护装置,可以是嵌入在网络应用软件主程序中的软件装置,也可以是一个物理实体设备。
本发明根据上述系统实施例,相应地还提供了实现网络应用软件web服务使用的方法实施例,包括:
将同样的具有web服务的网络应用程序同时装载于两个以上Web服务设备中,并为Web服务设备分配IP;
将被选为主服务设备的Web服务设备与用户终端接通,提供Web服务。
在上述方法实施例中,将被选为主服务设备的Web服务设备与用户终端接通,是指将初始默认为主服务设备的Web服务设备通过Socket转换模块与用户终端接通。
上述方法实施例还包括:
每隔一段时间检测Web服务设备内Web服务的存活状态。
上述方法实施例还包括:
当检测到Web服务的存活状态为异常时,通过Socket转换模块将存活状态异常的Web服务设备切换为状态正常的另一个Web服务设备与用户终端接通,继续提供Web服务。
上述方法实施例还包括:
当检测到原作为主服务设备的Web服务的存活状态恢复为正常时,通过Socket转换模块切换原作为主服务设备的Web服务设备与用户终端接通。
对于本领域的专业人员来说,在了解了本发明内容和原理后,能够在不背离本发明的原理和范围的情况下,根据本发明的方法进行形式和细节上的各种修正和改变,但是这些基于本发明的修正和改变仍在本发明的权利要求保护范围之内。