掌桥专利:专业的专利平台
掌桥专利
首页

地址更新控制方法及其装置、设备、介质、产品

文献发布时间:2023-06-19 18:30:43


地址更新控制方法及其装置、设备、介质、产品

技术领域

本申请涉及网络在线领域,尤其涉及一种地址更新控制方法,此外还涉及该方法相应的装置、设备、非易失性存储介质以及计算机程序产品。

背景技术

现有的网络平台中具有各类型的在线服务供平台用户使用,平台中的在线服务在服务请求处理时,通过会使用一个具有客户端地址的客户端实例来处理各服务请求,虽然使用一个服务实例可节省资源及开发成本,但当需要更新客户端实例的客户端地址时,除了因客户端地址一般配置于客户端实例的代码逻辑中,进行客户端地址时则需要通过修改客户端实例的代码逻辑,这将消耗大量的开发成本,且即使平台通过配置中心拉取客户端实例的代码逻辑进行客户端地址动态更新,也仍存在因客户端地址更新而需重启客户端实例,即在对客户端实例的客户端地址进行更新时,不可避免需停止客户端实例的运行,在客户端实例停止运行的期间,其相关联的在线服务的服务请求将无法被即使处理,将导致在线服务无法被平台用户使用,且在重启后的客户端实例需要处理堆积的巨量请求,也容易导致重启后的客户端实例发生崩溃。

鉴于现有的客户端实例进行客户端地址更新所存在的问题,本申请人出于解决该问题的考虑做出相应的探索。

发明内容

本申请的目的在于满足用户需求而提供一种地址更新控制方法,此外还涉及该方法相应的装置、设备、非易失性存储介质以及计算机程序产品。

为实现本申请的目的,采用如下技术方案:

适应本申请的目的而提出的一种地址更新控制方法,包括如下步骤:

响应客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址;

生成所述新客户端地址所对应的新客户端实例,驱动所述新客户端实例处理最新的服务请求;

校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例。

进一步的实施例中,响应客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址的步骤中,包括如下步骤:

响应由管理端推送的所述客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址;

查询已部署客户端地址库中是否存在所述新客户端地址,若存在,则向所述管理端推送表征地址已存在的通知;

当所述已部署客户端地址库中不存在所述新客户端地址,将所述新客户端地址确定为可用客户端地址。

进一步的实施例中,生成所述新客户端地址所对应的新客户端实例,驱动所述新客户端实例处理最新的服务请求的步骤中,包括如下步骤:

生成以所述新客户端地址为客户端地址的新客户端实例;

响应由所述新客户端实例推送生成完成指令,将所述新客户端地址存储至已部署客户端地址库中。

进一步的实施例中,校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例的步骤中,包括如下步骤:

响应由服务器推送的客户端销毁指令,关闭服务请求获取接口;

检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求;

当不存在所述未处理服务请求时,向服务器推送客户端可销毁指令。

进一步的实施例中,校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例的步骤中,包括如下步骤:

响应由服务器推送的客户端销毁指令,关闭服务请求获取接口;

检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求;

完成各所述未处理服务请求的处理后,将向服务器推送客户端销毁通知,进行客户端自行销毁。

进一步的实施例中,校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例的步骤中,包括如下步骤:

推送服务请求处理状态校验请求至所述旧客户端实例,驱动所述旧客户端校验未处理服务请求的处理状态;

获取由所述旧客户端推送的服务请求处理信息,当所述服务请求处理信息表征为已处理所有服务请求时,销毁所述旧客户端实例;

将所述旧客户端实例的旧客户端地址从已部署客户端地址库中移除。

适应本申请的目的而提出的一种地址更新控制装置,其包括:

地址更新响应模块,用于响应客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址;

新客户端生成模块,用于生成所述新客户端地址所对应的新客户端实例,驱动所述新客户端实例处理最新的服务请求;

旧客户端销毁模块,用于校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例。

进一步的实施例中,所述地址更新响应模块包括:

新客户端地址获取子模块,用于响应由管理端推送的所述客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址;

新客户端地址校验子模块,用于查询已部署客户端地址库中是否存在所述新客户端地址,若存在,则向所述管理端推送表征地址已存在的通知;

新客户端地址,用于当所述已部署客户端地址库中不存在所述新客户端地址,将所述新客户端地址确定为可用客户端地址。

进一步的实施例中,所述新客户端生成模块包括:

新客户端实例生成子模块,用于生成以所述新客户端地址为客户端地址的新客户端实例;

新客户端地址存储子模块,用于响应由所述新客户端实例推送生成完成指令,将所述新客户端地址存储至已部署客户端地址库中。

进一步的实施例中,所述旧客户端销毁模块包括:

请求获取接口关闭子模块,用于响应由服务器推送的客户端销毁指令,关闭服务请求获取接口;

未处理请求校验子模块,用于检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求;

可销毁指令推送子模块,用于当不存在所述未处理服务请求时,向服务器推送客户端可销毁指令。

较佳的实施例中,所述旧客户端销毁模块还包括:

请求获取接口关闭子模块,用于响应由服务器推送的客户端销毁指令,关闭服务请求获取接口;

未处理请求校验子模块,用于检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求;

客户端自行销毁子模块,用于完成各所述未处理服务请求的处理后,将向服务器推送客户端销毁通知,进行客户端自行销毁。

较佳的实施例中,所述旧客户端销毁模块还包括:

状态校验请求推送子模块,用于推送服务请求处理状态校验请求至所述旧客户端实例,驱动所述旧客户端校验未处理服务请求的处理状态;

旧客户端销毁子模块,用于获取由所述旧客户端推送的服务请求处理信息,当所述服务请求处理信息表征为已处理所有服务请求时,销毁所述旧客户端实例;

旧地址移除子模块,用于将所述旧客户端实例的旧客户端地址从已部署客户端地址库中移除。

为解决上述技术问题本申请实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述所述地址更新控制方法的步骤。

为解决上述技术问题本申请实施例还提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述地址更新控制方法的步骤。

为解决上述技术问题本申请实施例还提供一种计算机程序产品,包括计算机程序及计算机指令,该计算机程序及计算机指令被处理器执行时,使得所述处理器执行上述所述地址更新控制方法的步骤。

相对于现有技术,本申请的优势如下:

本申请对在线服务的客户端地址更新进行动态平滑更新处理,当在线服务需进行客户端地址更新时,将生成以新客户端地址作为客户端地址的新客户端实例,且将作用于在线服务的新服务请求推送至新客户端实例中进行处理,完成新客户端实例后,将校验使用旧客户端地址的旧客户端实例是否已处理完成所有旧服务请求,以保证在线服务的旧服务请求被完成处理后,再对旧客户端实例进行销毁处理,防止在线服务中存在未处理的服务请求导致部分平台用户无法正常使用在线服务,可以看出,本申请通过双客户端实例进行平滑切换,通过生成新客户端地址的客户端实例接替旧客户端实例,以处理在线服务的新服务请求,无需中断在线服务,即可完成在线服务的客户端地址更新,保证在线服务再进行客户端地址更新时仍可处理新接收的服务请求,确保使用在线服务的平台用户的服务使用体验。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为实施本申请的技术方案相关的一种典型的网络部署架构示意图;

图2为本申请的地址更新控制方法的典型实施例的流程示意图;

图3为本申请中关于校验新客户端地址是否为可用客户端地址的具体实施方式所形成的流程示意图;

图4为本申请中关于生成使用新客户端地址为客户端地址的新客户端实例的具体实施方式所形成的流程示意图;

图5为本申请中关于销毁使用旧客户端地址的旧客户端实例的具体实施方式所形成的流程示意图;

图6为本申请中关于使用旧客户端地址的旧客户端实例进行自行销毁的具体实施方式所形成的流程示意图;

图7为本申请中关于服务器销毁且注销使用旧客户端地址的旧客户端实例的具体实施方式所形成的流程示意图;

图8为本申请的地址更新控制装置的典型实施例的原理框图;

图9为本申请一个实施例的计算机设备的基本结构框图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。

本技术领域技术人员可以理解,这里所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(PersonalCommunications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global PositioningSystem,全球定位系统)接收器;传统膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的传统膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。

本申请所称的“服务器”、“客户端”、“工作节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的电子设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。

需要指出的是,本申请所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本申请的网络部署方式的实施方式。

请参阅图1,本申请相关技术方案实施时所需的硬件基础可按图中所示的架构进行部署。本申请所称服务器80部署在云端,作为一个在线服务器,其可以负责进一步连接起相关数据服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备例如图中所示的智能手机81和个人计算机82或者第三方服务器(未图示)提供服务。所述的智能手机和个人计算机均可通过公知的网络接入方式接入互联网,与云端的服务器80建立数据通信链路,以便运行所述服务器所提供的服务相关的终端应用程序。

对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。

所述的应用程序,是指运行于服务器或终端设备上的应用程序,这一应用程序采用编程的方式实现了本申请的相关技术方案,其程序代码可被以计算机可执行指令的形式保存于计算机能识别的非易失性存储介质中,并被中央处理器调入内存中运行,通过该应用程序在计算机的运行而构造出本申请的相关装置。

对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。

本领域技术人员对此应当知晓:本申请的各种方法,虽然基于相同的概念而进行描述而使其彼此间呈现共通性,但是,除非特别说明,否则这些方法都是可以独立执行的。同理,对于本申请所揭示的各个实施例而言,均基于同一发明构思而提出,因此,对于相同表述的概念,以及尽管概念表述不同但仅是为了方便而适当变换的概念,应被等同理解。

请参阅图2,本申请的一种地址更新控制方法,在其典型实施例中,其包括如下步骤:

步骤S11,响应客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址:

所述的客户端地址更新指令一般由管理端推送至服务器中,处于所述管理端的开发人员通过服务器向所述管理端开放的客户端地址更新接口,向服务器推送所述客户端地址更新指令,以更新所述客户端地址更新指令所对应的在线服务的客户端地址。

所述的客户端地址更新指令中包含作用于当前需进行客户端地址更新的在线服务所对应的新客户端地址,所述的客户端地址一般是指客户端IP,通过向服务器推送包含所述新客户端地址的所述客户端地址更新指令,以便服务器响应该客户端地址更新指令,为所述在线服务创建具有所述新客户端地址的新客户端实例。

所述的客户端实例用于接收在线服务中的服务请求进行处理,例如,对于网络电商平台的电商搜索在线服务而言,该在线服务的客户端实例一般用于接收平台用户通过所述电商搜索在线服务的搜索商品或搜索商铺的服务请求。

服务器获取所述新客户端地址后,将对所述新客户端地址进行地址可用性校验,即校验所述新客户端地址是否为已存在的客户端实例所属的客户端地址,具体的,服务器获取所述新客户端地址后,将查询已部署客户端地址库中是否存在所述新客户端地址,若存在,则向所述管理端推送表征地址已存在的通知,以通知所述客户端地址,当所述已部署客户端地址库中不存在所述新客户端地址,将所述新客户端地址确定为可用客户端地址,以生成所述新客户端地址所对应的新客户端实例。

步骤S12,生成所述新客户端地址所对应的新客户端实例,驱动所述新客户端实例处理最新的服务请求:

获取所述新客户端地址后,将生成所述新客户端地址所对应的新客户端实例,以将在线服务的服务请求推送至所述新客户端实例中进行处理。

服务器生成以所述新客户端地址为客户端地址的所述新客户端实例,并等待所述新客户端实例的生成完成指令,当所述新客户端实例完成生成后,将向服务器推送所述生成完成指令,服务器响应该生成完成指令,并将所述新客户端地址存储至已部署客户端地址库中,所述的已部署客户端地址库中一般存储平台中各在线服务所对应的各客户端实例的客户端地址,当所述新客户端实例生成完成后,则表征所述新客户端实例已完成生成,此时,将所述新客户端实例存储至所述已部署客户端地址中。

通过为在线服务生成具有所述新客户端地址的所述新客户端实例,以使用所述新客户端实例负责所述在线服务的服务请求,无需停止所述在线服务进行新客户端地址更新,使所述在线服务在进行客户端地址更新时仍可接收服务请求进行处理。

步骤S13,校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例:

生成具有所述新客户端地址的所述新客户端实例后,将销毁在线服务中具有旧客户端地址的旧客户端实例,在销毁所述旧客户端实例时,需校验所述旧客户端实例是否已处理其接收的所有服务请求,以防止未被处理的服务请求被销毁。

所述的服务请求处理状态是指所述旧客户端实例是否已处理其具有的所有服务请求,服务器推送服务请求处理状态校验请求至所述旧客户端实例,驱动所述旧客户端校验未处理服务请求的处理状态,所述旧客户端实例响应由所述客户端销毁指令,将关闭服务请求获取接口,以停止所述服务请求获取接口关联的在线服务的服务请求,所述旧客户端实例关闭所述服务请求获取接口后,将检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求,且向服务器推送表征为未处理所有服务请求的服务请求处理信息,当不存在所述未处理服务请求时,将向服务器推送表征为已处理所有服务请求的服务请求处理信息,当服务器获取由所述服务请求处理信息后,当所述服务请求处理信息表征为已处理所有服务请求时,销毁所述旧客户端实例,且将所述旧客户端实例的旧客户端地址从已部署客户端地址库中移除。

一种实施例中,所述旧客户端实例响应由服务器推送的客户端销毁指令,关闭所述服务请求获取接口,且检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求,完成各所述未处理服务请求的处理后,向服务器推送客户端可销毁指令,服务器响应该客户端可销毁指令,销毁所述旧客户端,且将所述旧客户端实例的旧客户端地址从已部署客户端地址库中移除。

一种实施例中,所述旧客户端实例响应由服务器推送的客户端销毁指令,关闭所述服务请求获取接口,且处理其具有的所有服务请求后,将向服务器推送客户端销毁通知,并自行进行销毁。

通过本方法的典型实施例可知,本方法对在线服务的客户端地址更新进行动态平滑更新处理,当在线服务需进行客户端地址更新时,将生成以新客户端地址作为客户端地址的新客户端实例,且将作用于在线服务的新服务请求推送至新客户端实例中进行处理,完成新客户端实例后,将校验使用旧客户端地址的旧客户端实例是否已处理完成所有旧服务请求,以保证在线服务的旧服务请求被完成处理后,再对旧客户端实例进行销毁处理,防止在线服务中存在未处理的服务请求导致部分平台用户无法正常使用在线服务,可以看出,本方法通过双客户端实例进行平滑切换,通过生成新客户端地址的客户端实例接替旧客户端实例,以处理在线服务的新服务请求,无需中断在线服务,即可完成在线服务的客户端地址更新,保证在线服务再进行客户端地址更新时仍可处理新接收的服务请求,确保使用在线服务的平台用户的服务使用体验。

以上的典型实施例及其变化实施例充分揭示了本申请的地址更新控制方法的实施方案,但是,仍可通过对一些技术手段的变换和扩增而演绎出该方法的多种变化实施例,如下概要说明其他实施例:

一种实施例中,请参考图3,响应客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址的步骤中,包括如下步骤:

步骤S111,响应由管理端推送的所述客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址:

服务器响应所述新客户端地址更新指令后,将获取所述客户端地址更新指令包含的所述新客户端地址,所述的客户端地址一般是指客户端IP。

步骤S112,查询已部署客户端地址库中是否存在所述新客户端地址,若存在,则向所述管理端推送表征地址已存在的通知:

所述的已部署客户端地址库中存储着平台中各客户端实例所对应的客户端地址,服务器持续所述已部署客户端地址库中是否存在所述新客户端地址,若所述已部署客户端地址库中已存在所述新客户端地址,则向所述管理端推送表征地址已存在的通知。

步骤S113,当所述已部署客户端地址库中不存在所述新客户端地址,将所述新客户端地址确定为可用客户端地址:

当服务器查询所述部署客户端地址库中不存在所述新客户端地址时,则表征所述新客户端地址为可用客户端地址,即平台中不存在与使用所述新客户端地址的客户端实例,此时,可生成使用所述新客户端地址的新客户端实例。

本实施例中,在获取新客户端地址后,将校验新客户端是否可用,查询平台中是否存在已使用新客户端地址的客户端实例,若不存在,则表征新客户端地址可用于生成新客户端实例,防止存在具有相同客户端地址的客户端实例。

一种实施例中,请参考图4,生成所述新客户端地址所对应的新客户端实例,驱动所述新客户端实例处理最新的服务请求的步骤中,包括如下步骤:

步骤S121,生成以所述新客户端地址为客户端地址的新客户端实例:

服务器获取所述新客户端地址后,将生成使用所述新客户端地址作为客户端地址的所述新客户端实例。

步骤S122,响应由所述新客户端实例推送生成完成指令,将所述新客户端地址存储至已部署客户端地址库中:

当所述新客户端实例生成完成后,且响应由所述新客户端实例推送表征其已生成完成的所述生成完成指令后,服务器将所述新客户端地址存储至所述已部署客户端地址库中。

所述的已部署客户端地址库中存储着平台中各客户端实例所对应的客户端地址。

本实施例中,成功生成使用新客户端地址作为客户端地址的客户端实例后,将新客户端地址存储至存储着平台中各客户端实例所对应的客户端地址的已部署客户端地址库中,已将新客户端实例注册于平台中。

一种实施例中,请参考图5,校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例的步骤中,包括如下步骤:

步骤S131,响应由服务器推送的客户端销毁指令,关闭服务请求获取接口:

当服务器完成以新客户端地址作为客户端地址的所述新客户端实例后,将向使用旧客户端地址作为客户端地址的旧客户端推送用于销毁该旧客户端地址的所述客户端销毁指令。

所述的服务请求获取接口用于获取作用于在线服务的服务请求,所述旧客户端实例通过关闭所述服务请求获取接口,以停止获取所述服务请求。

步骤S132,检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求:

平台中的各客户端实例皆具有所述未处理服务请求队列,所述未处理服务请求队列中存储着客户端未处理的服务请求,且所述未处理服务请求队列根据表征服务请求推送至客户端时间的推送时间,从小到大对各服务请求进行排序。

所述旧客户端实例获取所述未处理服务请求队列,检测所述未处理服务请求队列是否存在未处理服务请求,若所述处理服务请求队列中存在未处理服务请求,则所述旧客户端实例将处理所述处理服务请求队列中存储的所有所述未处理服务请求。

步骤S133,当不存在所述未处理服务请求时,向服务器推送客户端可销毁指令:

当所述旧客户端实例检测所述未处理服务请求队列中不存在未处理服务请求或完成所述未处理服务请求队列中存储的所有未处理服务请求的处理后,将向服务器推送所述可销毁指令,以驱动服务器销毁所述旧客户端实例。

本实施例中,旧客户端实例响应服务器的销毁请求后,将进行未处理服务请求校验,检测未处理服务请求队列是否存在未处理服务请求,在完成所有未服务请求后,向服务器推送可销毁指令,以驱动服务器销毁旧客户端实例,节省由旧客户端实例所占用的资源。

一种实施例中,请参考图6,校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例的步骤中,包括如下步骤:

步骤S131’,响应由服务器推送的客户端销毁指令,关闭服务请求获取接口:

当服务器完成以新客户端地址作为客户端地址的所述新客户端实例后,将向使用旧客户端地址作为客户端地址的旧客户端推送用于销毁该旧客户端地址的所述客户端销毁指令。

所述的服务请求获取接口用于获取作用于在线服务的服务请求,所述旧客户端实例通过关闭所述服务请求获取接口,以停止获取所述服务请求。

步骤S132’,检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求:

平台中的各客户端实例皆具有所述未处理服务请求队列,所述未处理服务请求队列中存储着客户端未处理的服务请求,且所述未处理服务请求队列根据表征服务请求推送至客户端时间的推送时间,从小到大对各服务请求进行排序。

所述旧客户端实例获取所述未处理服务请求队列,检测所述未处理服务请求队列是否存在未处理服务请求,若所述处理服务请求队列中存在未处理服务请求,则所述旧客户端实例将处理所述处理服务请求队列中存储的所有所述未处理服务请求。

步骤S133’,完成各所述未处理服务请求的处理后,将向服务器推送客户端销毁通知,进行客户端自行销毁:

当所述旧客户端实例检测所述未处理服务请求队列中不存在未处理服务请求或完成所述未处理服务请求队列中存储的所有未处理服务请求的处理后,向向服务器推送所述客户端销毁通知,以通知服务器所述旧客户端实例将进行自身销毁,且在推送所述客户端销毁通知后,所述旧客户端实例将销毁自身。

本实施例中,旧客户端实例在接收服务器推送的销毁指令后,且确认自身不存在任意未处理服务请求后,将向服务器推送通知且进行自行销毁,旧客户端实例进行自身销毁,可节省服务器的计算资源。

一种实施例中,请参考图7,校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例的步骤中,包括如下步骤:

步骤S131”,推送服务请求处理状态校验请求至所述旧客户端实例,驱动所述旧客户端校验未处理服务请求的处理状态:

服务器向使用旧客户端地址的所述旧客户端实例推送所述服务请求处理状态校验请求,以校验所述旧客户端实例的服务请求处理状态。

所述的旧客户端实例接收所述服务请求处理状态校验请求后,将检测所述未处理服务请求队列是否存在未处理服务请求,以确定当前是否存在未处理的服务请求,若所述未处理服务请求队列存在未处理服务请求,则向服务器推送表征为未处理所有服务请求的服务请求处理信息,若所述未处理服务请求队列不存在未处理服务请求,则向服务器推送表征为已处理所有服务请求的服务请求处理信息。

步骤S132”,获取由所述旧客户端推送的服务请求处理信息,当所述服务请求处理信息表征为已处理所有服务请求时,销毁所述旧客户端实例:

当服务器获取表征为已处理所有服务请求的所述服务请求处理信息后,则服务器确定所述旧客户端实例的所述服务请求处理状态为已处理所有服务请求,将销毁所述旧客户端实例。

步骤S133”,将所述旧客户端实例的旧客户端地址从已部署客户端地址库中移除:

服务器销毁所述旧客户端实例后,将从所述已部署客户端地址库中查询出所述旧客户端地址,以将该旧客户端地址从所述已部署客户端地址库中移除,使所述旧客户端地址处于可用状态。

本实施例中,服务器在销毁使用旧客户端地址的旧客户端实例时,将校验旧客户端实例是否存在未处理的服务请求,在旧客户端实例已处理所有服务请求时,将销毁旧客户端实例,并将旧客户端地址整体为可用客户端地址。

进一步,可以通过将上述各实施例所揭示的方法中的各个步骤进行功能化,构造出本申请的一种地址更新控制装置,按照这一思路,请参阅图8,其中的一个典型实施例中,该装置包括:地址更新响应模块11,用于响应客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址;新客户端生成模块12,用于生成所述新客户端地址所对应的新客户端实例,驱动所述新客户端实例处理最新的服务请求;旧客户端销毁模块13,用于校验具有旧客户端地址的旧客户端实例的服务请求处理状态,当所述服务请求处理状态为已处理所有服务请求,销毁所述旧客户端实例。

一种实施例中,所述地址更新响应模块11包括:新客户端地址获取子模块,用于响应由管理端推送的所述客户端地址更新指令,获取所述客户端地址更新指令所对应的新客户端地址;新客户端地址校验子模块,用于查询已部署客户端地址库中是否存在所述新客户端地址,若存在,则向所述管理端推送表征地址已存在的通知;新客户端地址,用于当所述已部署客户端地址库中不存在所述新客户端地址,将所述新客户端地址确定为可用客户端地址。

一种实施例中,所述新客户端生成模块12包括:新客户端实例生成子模块,用于生成以所述新客户端地址为客户端地址的新客户端实例;新客户端地址存储子模块,用于响应由所述新客户端实例推送生成完成指令,将所述新客户端地址存储至已部署客户端地址库中。

一种实施例中,所述旧客户端销毁模块13包括:请求获取接口关闭子模块,用于响应由服务器推送的客户端销毁指令,关闭服务请求获取接口;未处理请求校验子模块,用于检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求;可销毁指令推送子模块,用于当不存在所述未处理服务请求时,向服务器推送客户端可销毁指令。

另一种实施例中,所述旧客户端销毁模块13还包括:请求获取接口关闭子模块,用于响应由服务器推送的客户端销毁指令,关闭服务请求获取接口;未处理请求校验子模块,用于检测未处理服务请求队列是否存在未处理服务请求,若存在,则处理所述未处理服务请求队列中存在的一个或多个未处理服务请求;客户端自行销毁子模块,用于完成各所述未处理服务请求的处理后,将向服务器推送客户端销毁通知,进行客户端自行销毁。

另一种实施例中,所述旧客户端销毁模块13还包括:状态校验请求推送子模块,用于推送服务请求处理状态校验请求至所述旧客户端实例,驱动所述旧客户端校验未处理服务请求的处理状态;旧客户端销毁子模块,用于获取由所述旧客户端推送的服务请求处理信息,当所述服务请求处理信息表征为已处理所有服务请求时,销毁所述旧客户端实例;旧地址移除子模块,用于将所述旧客户端实例的旧客户端地址从已部署客户端地址库中移除。

为解决上述技术问题,本申请实施例还提供一种计算机设备,用于运行根据所述地址更新控制方法所实现的计算机程序。具体请参阅图9,图9为本实施例计算机设备基本结构框图。

如图9所示,计算机设备的内部结构示意图。该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种地址更新控制方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种地址更新控制方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

本实施方式中处理器用于执行本申请的地址更新控制装置中的各个模块/子模块的具体功能,存储器存储有执行上述模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有地址更新控制装置中执行所有模块/子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。

本申请还提供一种非易失性存储介质,所述的地址更新控制方法被编写成计算机程序,以计算机可读指令的形式存储于该存储介质中,计算机可读指令被一个或多个处理器执行时,意味着该程序在计算机中的运行,由此使得一个或多个处理器执行上述任一实施例地址更新控制方法的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。

综上所述,本申请通过双客户端实例进行动态客户端地址更新,平滑更新在线服务中的客户端地址,使在线服务在无需中断的情况下完成客户端地址更新。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。

以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

技术分类

06120115592542