业务数据更新方法、服务器和服务器集群与流程

文档序号:18704314发布日期:2019-09-17 23:25阅读:227来源:国知局
业务数据更新方法、服务器和服务器集群与流程

本申请涉及数据处理技术领域,更具体地说,涉及一种业务数据更新方法、服务器和服务器集群。



背景技术:

随着信息技术的发展,服务器通过客户端(如:网页客户端,或,应用程序客户端)不断的为用户提供业务服务,例如,用户可以通过客户端向服务器发送数据请求,服务器通过客户端向用户展示对应的业务服务。例如,用户通过客户端向服务器发送指定广告请求,服务器通过客户端向用户展示该指定广告。

随着客户端的访问量不断增加,用户规模不断扩大,为了保证用户获得客户端所提供的业务服务的稳定性和效率,客户端后台的服务器通常会采用分布式服务器集群的架构,其中,通过局域网连接的多个服务器称为一个服务器集群(例如:多个服务器设置于同一机房中,通过局域网相连接,该机房中的多个服务器便可看作是一个服务器集群)。

在此基础上,客户端向用户提供相应业务时,就需要使服务器集群中各服务器所使用的业务数据相一致,否则,将会出现由于业务数据不一致而导致业务结果混乱的现象,例如,有的用户通过视频应用程序可以观看到某个广告,有的用户通过视频应用程序不能观看到该广告(针对具有同一种喜好特征的用户而言)。换言之,需要服务器集群包含的各服务器的业务数据一致。

现有技术中,使得服务器集群中各服务器的业务数据一致的方法如下:

若终端设备监测到自身存储的业务数据发生变更时,获取已变更的业务数据,并将已变更的业务数据分别发送给服务器集群中各服务器,从而实现服务器集群中各服务器的业务数据的同步更新,保证了服务器集群中各服务器的业务数据一致。

利用上述方法,若业务数据出错,那么服务器集群中各服务器的业务数据均出错,例如,业务数据为指定广告在一个月内的曝光量大于2万小于2.2万,若业务数据使得指定广告在一个月内的曝光量小于2万,那么将导致收入损失。若业务数据出错,那么涉及再次更新业务数据。再次更新业务数据的过程中,需要更新服务器集群中所有服务器中的业务数据,导致更新时间延长。若业务数据出错,在服务器集群的所有服务器运行一段时间后,才能发现,即业务数据出错的发现不及时。若业务数据出错能够导致服务器瘫痪,则服务器集群中所有服务器均发生瘫痪。



技术实现要素:

有鉴于此,本申请提供了一种业务数据更新方法、服务器和服务器集群。

一种业务数据更新方法,应用于第一服务器,包括:

获取第一业务数据以及所述第一业务数据对应的第一版本号;

若检测到所述第一版本号与自身存储的第二版本号不相同,基于所述第一业务数据对所述第二业务数据进行更新;所述第二版本号为所述第一服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第一服务器得到的最新版本的业务数据;

获取服务状态,所述服务状态是指所述第一服务器基于所述第一业务数据为至少一个客户端提供相应业务服务的状态;

若所述服务状态为非正常服务状态,不执行将所述第一业务数据对应的第一版本号存储至存储设备的操作,所述存储设备存储有所述第二业务数据对应的第二版本号,使得与所述第一服务器属于同一服务器集群的至少一个第二服务器在从所述存储设备得到的所述第二版本号与自身得到的所述第一业务数据对应的第一版本号不相同的情况下,不执行基于所述第一业务数据对自身存储的第二业务数据进行更新的操作。

一种业务数据更新方法,应用于第二服务器,包括:

获取第一业务数据以及所述第一业务数据对应的第一版本号;

若检测到所述第一版本号与自身存储的第二版本号不相同,获取存储设备中存储的业务数据对应的版本号;所述第二版本号为所述第二服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第二服务器得到的最新版本的业务数据;

其中,所述存储设备用于存储当前时间最新版本的业务数据对应的版本号,且所述最新版本的业务数据对应的服务状态为正常服务状态,所述服务状态是指第一服务器基于所述最新版本的业务数据为至少一个客户端提供相应业务服务的状态,所述第一服务器与所述第二服务器属于同一服务器集群;

若所述存储设备存储的版本号与所述第一版本号不相同,不执行基于所述第一业务数据对所述第二业务数据进行更新的操作。

一种第一服务器,包括:

第一业务组件,用于获取第一业务数据;

第一预检组件,用于获取所述第一业务数据对应的第一版本号,若检测到所述第一版本号与自身存储的第二版本号不相同,控制所述业务组件执行基于所述第一业务数据对所述第二业务数据进行更新的操作;所述第二版本号为所述第一服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第一服务器得到的最新版本的业务数据;

第一业务组件,还用于获取服务状态,将所述服务状态发送至所述第一预检组件;所述服务状态是指所述第一服务器基于所述第一业务数据为至少一个客户端提供相应业务服务的状态;

所述第一预检组件还用于:若所述服务状态为非正常服务状态,不执行将所述第一业务数据对应的第一版本号存储至存储设备的操作,所述存储设备存储有所述第二业务数据对应的第二版本号;使得与所述第一服务器属于同一服务器集群的至少一个第二服务器在从所述存储设备得到的所述第二版本号与自身得到的所述第一业务数据的第一版本号不相同的情况下,不执行基于所述第一业务数据对所述第二业务数据进行更新的操作。

一种第二服务器,包括:

第二业务组件,用于获取第一业务数据;

第二预检组件,用于获取所述第一业务数据对应的第一版本号,若检测到所述第一版本号与自身存储的第二版本号不相同,获取存储设备中存储的业务数据的版本号;所述第二版本号为所述第二服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第二服务器得到的最新版本的业务数据;

其中,所述存储设备用于存储当前时间最新版本的业务数据对应的版本号,且所述最新版本的业务数据对应的服务状态为正常服务状态,所述服务状态是指第一服务器基于所述最新版本的业务数据为至少一个客户端提供相应业务服务的状态,所述第一服务器与所述第二服务器属于同一服务器集群;

所述预检组件,还用于:若所述存储设备存储的版本号与所述第一版本号不相同,不触发所述业务组件执行基于所述第一业务数据对所述第二业务数据进行更新的操作。

一种服务器集群,包括:

至少一个如上所述的第一服务器;

至少一个如上所述的第二服务器;

以及,如上所述的存储设备。

经由上述的技术方案可知,与现有技术相比,本申请公开了一种业务数据更新方法,在对服务器集群中包含的各个服务器更新业务数据的过程中,首先更新服务器集群中至少一个第一服务器的业务数据,然后使得第一服务器基于第一业务数据为至少一个客户端提供相应业务服务。获得第一服务器的服务状态,若所述服务状态为非正常服务状态,那么服务器集群中至少一个第二服务器不会基于第一业务数据对自身存储的第二业务数据进行更新。即通过第一服务器可以及时发现第一业务数据是否出错,在第一业务数据出错的情况下,由于仅有服务器集群中部分服务器即第一服务器基于第一业务数据对第二业务数据进行更新,所以仅再次更新第一服务器中的第一业务数据即可,与目前若第一业务数据出错需要重新更新服务器集群中所有服务器的业务数据而言,加快了更新速度。若第一业务数据出错能够导致服务器瘫痪,那么服务器集群中仅有第一服务器发生瘫痪,至少一个第二服务器不会发生瘫痪。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例公开的一种业务数据更新系统示意图;

图2为本申请实施例公开的一种应用于第一服务器的业务数据更新方法流程图;

图3为本申请实施例公开的一种应用于第二服务器的业务数据更新方法流程图;

图4为本申请实施例公开的一种业务数据更新系统的可选信令流程;

图5为本申请实施例公开的一种应用于第一服务器的装置结构示意图;

图6为本申请实施例公开的一种应用于第二服务器的装置结构示意图;

图7为本申请实施例公开的一种应用于第一服务器的设备硬件结构框图;

图8为本申请实施例公开的一种应用于第二服务器的设备硬件结构框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

如图1所示,为本申请实施例提供的一种业务数据更新系统的结构图,业务数据更新系统包括:终端设备11、至少一个服务器集群10。

其中,一个服务器集群10包括:存储设备12、一个或多个第一服务器13,以及,一个或多个第二服务器14。

可选的,终端设备11可以为智能手机、电脑、pad、服务器等电子设备。

终端设备11用于存储业务数据,即服务器通过客户端为用户提供的业务服务所对应的业务数据。在一可选实施例中,终端设备11中存储的业务数据可以被相应的应用程序或管理程序所修改,从而产生业务数据的变更,在实际应用中的某些场景下,业务数据变更可能较为频繁,一旦终端设备11中的业务数据发生了变更,那么就需要更新一个或多个服务器集群10中各服务器存储的业务数据。

本申请中所提及的业务数据是指各种业务所对应的数据,上述服务器集群10中各服务器可以基于业务数据为至少一个客户端提供相应业务服务。可选的,业务数据可以包括以下任一种:广告曝光业务对应的业务数据(用于对广告进行曝光处理)、广告投放业务对应的业务数据(用于对广告进行投放处理)。

在一可选实施例中,终端设备11监测到自身存储的业务数据发生变更时,获取已变更的业务数据,(对业务数据进行增、删、改、查等数据操作均会导致业务数据的变更。那么,获取的已变更数据,也就是获取进行了数据操作后发生了变化的数据),将已变更的业务数据发送给一个或多个服务器集群10中各服务器,即将已变更的业务数据发送给服务器集群10中的一个或多个第一服务器13以及一个或多个第二服务器14。

第一服务器13可以检测接收到的业务数据(后续称为第一业务数据)是否有误,可选的,第一服务器13可以基于第一业务数据对至少一个客户端提供正常的业务服务,基于业务服务的服务状态是否为正常服务状态,确定第一业务数据是否有误。若第一服务器13检测到第一业务数据无误,那么将该第一业务数据的第一版本号发送至存储设备12。

上述第一业务数据“有误”是指若第一业务数据与第一业务数据对应的第一业务服务的预期服务状态不同。例如,若预期服务状态为在预设时间段(例如2019年3月1日至2019年4月1日的每天8点至12点)对a广告进行曝光处理,若第一业务数据对应的实际服务状态为在与预设时间段不同的时间段(例如2019年3月1日至2019年4月1日的每天10点至18点)对a广告进行曝光处理,则认为预期服务状态与实际服务状态不同,即第一业务数据存在错误;或者,若第一业务数据导致服务器瘫痪,则认为第一业务数据存在错误。再例如,若预期服务状态为在预设时间段内a广告的曝光量大于或等于10次,若第一业务数据对应的实际服务状态为a广告的曝光量为5次,那么预期服务状态与实际服务状态不同,即第一业务数据存在错误。

第二服务器14若检测到从存储设备12得到的第一版本号与自己从终端设备11获得的业务数据的版本号相同,则基于第一业务数据更新自身存储的第二业务数据,以使得第二服务器14可以基于第一业务数据对至少一个客户端提供业务服务。

综上,服务器集群中一个或多个第一服务器和一个或多个第二服务器接收到终端设备11发送的第一业务数据以及第一版本号后,第二服务器14并不立即基于第一业务数据更新自己存储的第二业务数据,而是等待一段时间;可以理解的是,第二服务器至少等待第一服务器基于第一业务数据更新第二业务数据的时间,与,第一服务器基于所述第一业务数据为至少一个客户端提供相应业务服务的时间,之和。

第一服务器13在接收到终端设备11发送的第一业务数据以及第一业务数据对应的第一版本号后,第一服务器13会基于第一业务数据为至少一个客户端提供业务服务,以此检测第一业务数据是否有误,若第一业务数据无误,会将第一版本号存储至存储设备12。第二服务器14检测到存储设备12存储的第一版本号与自身从终端设备11接收到的第一版本号相同,那么等待结束,第二服务器14会基于第一业务数据更新自己存储的第二业务数据,从而可以基于第一业务数据对至少一个客户端提供业务服务。若第一服务器13检测到第一业务数据有误,存储设备12不会存储第一版本号,可选的,可能会存储上一次业务数据更新的过程中业务数据对应的版本号(假设称为第二版本号)。第二服务器检测到存储设备12存储的第二版本号与自身从终端设备11获得的第一版本号不同,则不会基于第一业务数据更新自己存储的第二业务数据。

综上,第一服务器13在接收到第一业务数据后,会检测第一业务数据是否有误,无需等待服务器集群10中所有服务器运行一段时间,才能人为发现业务数据有误,所以第一服务器13可以及时发现第一业务数据是否有误。

进一步的,若第一业务数据有误,只需要再次更新第一服务器13中存储的业务数据即可,无需对服务器集群10中所有服务器存储的业务数据再次更新,加快了更新速度。

若第一业务数据能够导致服务器瘫痪,那么对于服务器集群10而言,由于仅第一服务器13将第二业务数据更新为第一业务数据,所以仅第一服务器会瘫痪,由于第二服务器14仅存储有第一业务数据,但并未将第二业务数据更新为第一业务数据,所以第二服务器14不会瘫痪,降低了修理服务器的成本,且可以快速恢复服务器集群10。

上述存储设备12可以是诸如随机存取存储器(randomaccessmemory,ram)、磁光盘(magneto-opticaldisc,modisc)、硬盘等可用于读和写的设备。可选的,本申请实施例提供的业务数据更新系统中,存储设备12可以保证若业务数据无误,则服务器集群中的第一服务器13和第二服务器14中的业务数据保持一致。例如,针对具有同一种喜好特征的用户而言,该服务器集群10中各服务器所服务的所有用户都可以通过视频应用程序观看到某个广告,也即保持了服务器集群10中各服务器的业务数据的一致。

需要说明的是,图1仅为业务数据更新系统的一种示意,本申请实施例并不对服务器集群和终端设备的数目,以及,服务器集群中各服务器与存储设备的交互方式(例如参见图1中,可选的,第二服务器14主动从存储设备12中读取最新的业务数据对应的版本号;可选的,存储设备12可以主动将其中存储的最新的业务数据对应的版本号发送至第二服务器14)进行限定。

接下来,结合图1,对本申请实施例提出的业务数据更新方法进行介绍。

本申请实施例提供的业务数据更新方法可以应用于图1所示的第一服务器13,参见图2所示的应用于第一服务器13的业务数据更新方法流程图,该方法包括:

步骤s200、获取第一业务数据以及所述第一业务数据对应的第一版本号。

前述已经说明了,终端设备11中所存储的业务数据可以被相应的应用程序或管理程序所修改,从而产生业务数据的变更。

可选的,本申请实施例中第一业务数据可以为本申请实施例提及的“已变更业务数据”,该第一业务数据为“新的”业务数据,本申请实施例可以基于该“新的”业务数据对服务器中存储的“旧的”业务数据进行更新。

可选的,若终端设备11监测到自身存储的业务数据发生变更,则终端设备11可以将已变更的“新的”业务数据(即第一业务数据)及已变更的“新的”业务数据对应的版本号(即第一业务数据对应的第一版本号)分别发送至服务器集群10中的第一服务器13。也即,第一服务器13可以获取终端设备11中存储的第一业务数据以及第一业务数据对应的第一版本号。

可选的,任一业务数据都对应有版本号,且不同业务数据对应的版本号不同,可以通过版本号唯一确定业务数据。可选的,上述业务数据对应的版本号为业务数据的版本的标识号,该版本号可以确定业务数据是否为“最新”的业务数据,例如,业务数据的版本号随着更新,版本号依次递增,例如,版本号2.0比版本号1.0更“新”。

步骤s210、若检测到所述第一版本号与自身存储第二版本号不相同,基于所述第一业务数据对所述第二业务数据进行更新。

所述第二版本号为所述第一服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第一服务器得到的最新版本的业务数据。

可选的,第二业务数据可以为在本次业务数据更新过程中“旧的”业务数据,也即在上一次业务数据更新的过程中“新的”业务数据。

可选的,第一服务器13获取第一业务数据对应的第一版本号后,可以检测其是否与自身存储的第二业务数据对应的第二版本号相同。可以理解的是,若相同,则表征第一服务器13中存储的第二业务数据与第一业务数据相同,则不需要用第一业务数据替换第二业务数据;若不相同,则表征第一服务器13中存储的第二业务数据与第一业务数据不相同,也即业务数据发生了变更,则可以基于第一业务数据对第二业务数据进行更新。

步骤s220、获取服务状态,其中,所述服务状态是指所述第一服务器基于所述第一业务数据为至少一个客户端提供相应业务服务的状态。

可选的,第一服务器13更新第一业务数据完毕后,可以基于第一业务数据运行,以得到第一服务器13的服务状态。也即,通过服务状态可以及时发现第一业务数据是否存在错误。

可选的,上述服务状态至少包括以下两种状态:正常服务状态及非正常服务状态。其中,正常服务状态是指第一服务器基于业务数据为至少一个客户端提供的相应业务服务能够达到预期服务状态;非正常服务状态是指第一服务器基于业务数据为至少一个客户端提供的相应业务服务不能够达到预期服务状态。例如,业务数据为广告曝光业务对应的业务数据,假设预期服务状态为a广告在一个月内的曝光量大于2万小于2.2万,假设服务器集群包括10个服务器,第一服务器基于第一业务数据运行的时间为1小时,那么第一服务器对应的预期服务状态为a广告在1小时的曝光量大于或等于(其中,为向上取整符号),小于或等于则若第一服务器基于第一业务数据为至少一个客户端提供业务服务的过程中,1个小时的a广告的曝光量大于4或小于3,则认为第一服务器基于第一业务数据为至少一个客户端提供a广告曝光的服务状态为非正常服务状态,即未达到预期服务状态。若第一服务器基于第一业务数据为至少一个客户端提供业务服务的过程中,1个小时的a广告的曝光量等于3或4,则认为第一服务器基于第一业务数据为至少一个客户端提供a广告曝光的服务状态为正常服务状态,即达到预期服务状态。

步骤s230、若所述服务状态为非正常服务状态,不执行将所述第一业务数据对应的第一版本号存储至存储设备的操作。

其中,所述存储设备存储有所述第二业务数据对应的第二版本号,使得与所述第一服务器属于同一服务器集群的至少一个第二服务器在从所述存储设备得到的所述第二版本号与自身得到的所述第一业务数据对应的第一版本号不相同的情况下,不执行基于所述第一业务数据对自身存储的第二业务数据进行更新的操作。

可选的,若服务状态为非正常服务状态,也即第一服务器13基于第一业务数据为至少一个客户端提供的相应业务服务未达到预期服务状态(例如上述步骤s220中1个小时的a广告的曝光量大于4或小于3),则表示第一业务数据存在错误,因此不执行将第一业务数据对应的第一版本号存储至存储设备12的操作。

可选的,上述“不执行”至少可以包括以下两种情况:第一种情况,禁止将第一业务数据对应的第一版本号存储至存储设备12;第二种情况,若上述服务状态为非正常服务状态,则结束,即上述服务状态为非正常服务状态,则第一服务器13不再进行任何操作,第一服务器13不主动将第一版本号存储至存储设备12,存储设备12就无法得到并存储第一版本号。

可选的,若服务状态为非正常服务状态,则第一服务器13会将第一业务数据对应的第一版本号存储至存储设备12,存储设备12中存储的最新的业务数据对应的版本号为第一业务数据对应的第一版本号。

可选的,考虑到上述服务状态为非正常服务状态表征第一业务数据存在错误,因此使得在存储设备12存储的第二版本号与第二服务器14得到的第一业务数据对应的第一版本号不相同的情况下,第二服务器14可以不执行基于第一业务数据对自身存储的第二业务数据进行更新的操作。可选的,可以包括一台或多台第二服务器14,且第二服务器14与上述第一服务器13属于同一服务器集群10。

这里的“第二服务器14可以不执行基于第一业务数据对自身存储的第二业务数据进行更新的操作”至少可以包括以下两种情况:第一种情况下,第二服务器14禁止基于第一业务数据对自身存储的第二业务数据进行更新;第二种情况下,若第二服务器14从终端设备11得到的第一版本号,与从存储设备12得到的第二版本号不相同,则不执行任何操作。

本申请公开了一种应用于第一服务器13的业务数据更新方法,在对服务器集群10中包含的各个服务器更新业务数据的过程中,首先更新服务器集群10中至少一个第一服务器13的业务数据,然后使得第一服务器13基于第一业务数据为至少一个客户端提供相应业务服务。获得第一服务器13的服务状态,若所述服务状态为非正常服务状态,那么服务器集群10中至少一个第二服务器14不会基于第一业务数据对自身存储的第二业务数据进行更新。即通过第一服务器13可以及时发现第一业务数据是否出错,在第一业务数据出错的情况下,由于仅有服务器集群10中部分服务器即第一服务器13基于第一业务数据对第二业务数据进行更新,所以仅再次更新第一服务器13中的第一业务数据即可,与目前若第一业务数据出错需要重新更新服务器集群10中所有服务器的业务数据而言,加快了更新速度。若第一业务数据出错能够导致服务器瘫痪,那么服务器集群10中仅有第一服务器13发生瘫痪,至少一个第二服务器14不会发生瘫痪。

上述步骤s230详细介绍了服务状态为非正常服务状态的情况下,第一服务器13所执行的操作。本申请的一个实施例,对服务状态为正常服务状态的情况进行说明。

本申请实施例中,若所述服务状态为正常服务状态,将所述第一业务数据对应的第一版本号存储至所述存储设备12,一个或多个第二服务器14在从存储设备12得到的第一版本号与自身从终端设备11得到的第一业务数据的第一版本号相同的情况下,基于所述第一业务数据对第二业务数据进行更新。

综上,若服务状态为正常服务状态,则存储设备12中存储的最新的业务数据对应的版本号为第一业务数据对应的第一版本号。

本申请的另一个实施例,对上述步骤s220,获取服务状态的过程进行说明。

可选的,考虑到第一服务器13基于第一业务数据更新完毕第二业务数据之前,由于第一服务器13并未基于第一业务数据进行运行,即还未基于第一业务数据为至少一个客户端提供业务服务,所以无法获知基于第一业务数据是否能够为至少一个客户端提供正常的业务服务,因此,需要在第一服务器13基于第一业务数据运行一段时间后,才可以获知基于第一业务数据是否能够为至少一个客户端提供正常的业务服务,因此可以在第一服务器13基于第一业务数据更新完毕第二业务数据,且基于第一业务数据运行一段时间后,再获得服务状态,则该过程具体可以包括:

以第一时刻为起始时刻,获取设定时间段内的所述服务状态,所述第一时刻为基于所述第一业务数据对所述第二业务数据更新完毕的时刻。

在一可选实施例中,可以预先设置时间段a,例如,以第一服务器13开始基于第一业务数据更新第二业务数据的时刻为起始时刻,检测该时间段a内第一服务器13是否基于第一业务数据更新完毕第二业务数据,即第一业务数据完全替代第二业务数据。若在时间段a内第一服务器13基于第一业务数据更新完毕第二业务数据,则表示第一服务器13能够正常完成业务数据的更新;若在时间段a内第一服务器13基于第一业务数据未更新完毕第二业务数据,则表示第一服务器13不能够正常完成业务数据的更新,即该第一业务数据可能存在问题。

假设,设定时间段为t1,假设第一时刻为0,那么设定时间段对应的区间为[0,t1],若第一时刻为t2,则设定时间段对应的区间为[t2,t1+t2]。

可以理解的是,不同时刻用户浏览客户端的数量不同,即不同时刻,第一服务器13基于第一业务数据为至少一个客户端提供业务服务的次数不同,即不同时刻,针对同一业务数据,第一服务器在相同设定时间段获得的服务状态可能不同。例如,假设第一业务数据为广告曝光业务对应的业务数据,考虑到一般情况下,用户在18:00到次日0:00通过客户端观看视频的可能性更大,而在0:00到18:00通过客户端观看视频的可能性更小,也即在18:00到次日0:00广告曝光量较大,而在0:00到18:00广告曝光量较小。

可以理解的是,业务数据的更新时刻可以是一天中的任一时刻,若针对同一第一业务数据,无论第一业务数据的更新时刻是哪一时刻,对服务状态的衡量尺度相同,例如,衡量服务状态的区间范围相同,那么,可以基于业务数据的更新时刻,设置相应的设定时间段,例如,若第一业务数据更新时刻为19:00,由于这个时间观看客户端的用户较多,广告曝光量较大,所以设定时间段可以较小;若第一业务数据更新时刻为14:00,由于这个时间观看客户端的用户较少,广告曝光量较小,所以设定时间段可以较长。

可选的,设定时间段可以是基于第一服务器更新完毕第一业务数据的时刻或开始更新第一业务数据的时刻设置的。

若针对同一第一业务数据,无论第一业务数据的更新时刻是哪一时刻,设定时间段相同。

可以理解的是,不同的业务数据对应的服务状态可能不同,下面对服务状态的种类进行举例说明。本申请提供但不限于以下几种获取服务状态的方法。

第一种:

获取所述设定时间段内所述第一服务器为所述至少一个客户端提供相应业务服务的平均响应时间。

可选的,平均响应时间是指第一服务器13为至少一个客户端提供相应业务服务所需要的平均时间,也即第一服务器13处理该相应业务请求所需要的平均时间。可以理解的是,在预设时间段内,获取的平均响应时间越大,表示第一服务器13处理该相应业务的处理速度越慢,处理相应业务的效率越低;反之,获取的平均响应时间越小,表示第一服务器13处理该相应业务的处理速度越快,处理相应业务的效率越高。

可选的,若第一业务数据出错导致第一服务器13瘫痪,则平均响应时间为正无穷(+∞)。

第二种:

获取所述设定时间段内所述至少一个客户端在所述第一业务数据对应的业务服务下针对所述第一服务器的每秒查询率。

可选的,每秒查询率(queries-per-second,qps)可以用来表征服务器在规定时间内所处理的业务请求的数量。可以理解的是,在预设时间段内,获取的qps越小,表示第一服务器13处理该相应业务的处理速度越慢,处理相应业务的效率越低;反之,获取的qps越大,表示第一服务器13处理该相应业务的处理速度越快,处理相应业务的效率越高。

上述qps可以用下述计算公式表示:

qps=pv/(一天总秒数*h)

其中,pv是指服务器所处理的业务请求的总数量,h是指第一服务器基于第一业务数据为至少一个客户端提供业务服务的时长(以小时为单位)与24的比值。

例如,若h为20%,每天秒数为86400秒,服务器处理的业务请求的总数量(pv)为240万,则获取的qps=2400000/(86400*20%)=139,也即服务器在每秒处理的业务请求的数量为139个。

可选的,若第一业务数据出错导致第一服务器13瘫痪,则qps为零。

第三种:

获取所述设定时间段内所述第一服务器基于所述第一业务数据为所述至少一个客户端提供指定信息的曝光量。

可选的,指定信息的曝光量是指第一服务器13基于第一业务数据为至少一个客户端提供指定信息的展示次数。

可选的,若第一业务数据出错导致第一服务器13瘫痪,则指定信息的曝光量为零。

第四种:获取上述平均响应时间、每秒查询率和曝光量中任意两个,或者,获取上述平均响应时间、每秒查询率和曝光量。

可选的,可以针对不同的服务状态,设置不同的阈值,则在预设阈值范围内,上述服务状态为正常服务状态;否则,上述服务状态为非正常服务状态。基于此,本申请实施例上一实施例提及的平均响应时间、qps以及指定信息的曝光量与服务状态的对应关系具体介绍如下:

第一种:

若所述平均响应时间小于或等于第一阈值,所述服务状态为正常服务状态。

可选的,可以针对平均响应时间,预设第一阈值,则可以理解的是,若平均响应时间小于或等于第一阈值,表示服务状态为正常服务状态;若平均响应时间大于第一阈值,表示服务状态为非正常服务状态。

例如,针对平均响应时间,第一阈值为5ms,则若平均响应时间小于或等于5ms(例如4ms),表示服务状态为正常服务状态;若平均响应时间大于5ms(例如6ms),表示服务状态为非正常服务状态。

第二种:

若所述每秒查询率大于或等于第二阈值,所述服务状态为正常服务状态。

可选的,可以针对每秒查询率(qps),预设第二阈值,则可以理解的是,若qps大于或等于第二阈值,表示服务状态为正常服务状态;若qps小于第二阈值,表示服务状态为非正常服务状态。

例如,针对qps,第二阈值为139,则若qps大于或等于139(例如145),表示服务状态为正常服务状态;若qps小于139(例如138),表示服务状态为非正常服务状态。

第三种:

若所述指定信息的曝光量大于或等于第三阈值且小于或等于第四阈值,所述服务状态为正常服务状态。

可选的,考虑指定信息的曝光量在不同时刻可能不同,也即可能出现某些时刻指定信息的曝光量远远大于预设时间段内指定信息的平均曝光量,而在某些时刻指定信息的曝光量远远小于预设时间段内指定信息的平均曝光量,因此可以预设第三阈值和第四阈值,第三阈值可以为预设时间段内对应的最小曝光量,第四阈值为预设时间段内对应的最大曝光量,则若指定信息的曝光量大于或等于第三阈值且小于或等于第四阈值,表示服务状态为正常服务状态;否则,表示服务状态为非正常服务状态。

例如,指定信息为广告a,考虑到一般情况下,用户在18:00到次日0:00通过客户端观看视频的可能性最大;在0:00到6:00通过客户端观看视频的可能性最小;在6:00到18:00通过客户端观看视频的可能性较大。也即在18:00到次日0:00进行广告曝光可能效果最好,在该段时间内广告a的曝光量可能远远大于一天中广告a的平均曝光量;在0:00到6:00进行广告曝光可能效果最差,在该段时间内广告a的曝光量可能远远小于一天中广告a的平均曝光量;在6:00到18:00进行广告曝光可能效果较好,在该段时间内广告a的曝光量可能与一天中广告a的平均曝光量持平。因此可以预设两个阈值,即第三阈值(例如100万)和第四阈值(例如150万),其中,第三阈值可以为一天中最小曝光量,第四阈值可以为一天中最大曝光量,则若广告a的曝光量大于或等于第三阈值且小于或等于第四阈值,表示服务状态为正常服务状态;否则,表示服务状态为非正常服务状态。

第四种:

若所述平均响应时间小于或等于第一阈值,且若所述每秒查询率大于或等于第二阈值,所述服务状态为正常服务状态。

或,

若所述平均响应时间小于或等于第一阈值,且若所述指定信息的曝光量大于或等于第三阈值且小于或等于第四阈值,所述服务状态为正常服务状态。

或,

若所述每秒查询率大于或等于第二阈值,且,若所述指定信息的曝光量大于或等于第三阈值且小于或等于第四阈值,所述服务状态为正常服务状态。

或,

若所述平均响应时间小于或等于第一阈值,且若所述每秒查询率大于或等于第二阈值,且若所述指定信息的曝光量大于或等于第三阈值且小于或等于第四阈值,所述服务状态为正常服务状态。

本申请实施例还提供了应用于第二服务器14的业务数据更新方法,该第二服务器14与上述第一服务器13属于同一服务器集群,参见图3所示的一种应用于第二服务器14的业务数据更新方法流程图,该方法包括:

步骤s300、获取第一业务数据以及所述第一业务数据对应的第一版本号。

本步骤中第二服务器14获取第一业务数据以及第一业务数据对应的第一版本号的方法与上述步骤s200中,第一服务器13获取第一业务数据以及第一业务数据对应的第一版本号的方法相同,详细可参照上述步骤s200,这里不再详细赘述。

步骤s310、若检测到所述第一版本号与自身存储的第二版本号不相同,获取存储设备中存储的业务数据对应的版本号。

所述第二版本号为所述第二服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第二服务器得到的最新版本的业务数据。

其中,所述存储设备用于存储当前时间最新版本的业务数据对应的版本号,且所述最新版本的业务数据对应的服务状态为正常服务状态,所述服务状态是指第一服务器基于所述最新版本的业务数据为至少一个客户端提供相应业务服务的状态,所述第一服务器与所述第二服务器属于同一服务器集群。

可选的,本申请实施例中第二业务数据可以为本申请实施例提及的“旧的”业务数据。

可选的,第二服务器14获取第一业务数据对应的第一版本号后,可以检测其是否与自身存储的第二业务数据对应的第二版本号相同。可以理解的是,若相同,则表征第二服务器14中存储的第二业务数据与第一业务数据相同,则不需要用第一业务数据替换第二业务数据;若不相同,则表征第二服务器14中存储的第二业务数据与第一业务数据不相同,也即业务数据发生了变更,则需要基于第一业务数据对第二业务数据进行更新。

考虑到步骤s300获取的第一业务数据可能存在错误,因此可选的,第二服务器14在获取第一业务数据及第一业务数据对应的第一版本号后,可以从存储设备12中获取其中存储的业务数据的版本号,该版本号为存储设备12中存储的当前时间最新版本的业务数据对应的版本号,这里的“最新版本”至少包括以下两种情况:第一种情况,若第一业务数据存在错误,则存储设备12中存储的最新的业务数据对应的版本号为第一业务数据之前,距离当前时刻最近的不存在错误的第二业务数据对应的版本号;第二种情况,若第一业务数据不存在错误,则存储设备12中存储的最新的业务数据对应的版本号为第一业务数据对应的第一版本号。

上述最新版本的业务数据为与第二服务器14属于同一服务器集群10的第一服务器13检测到最新版本的业务数据不存在错误后,将最新版本的业务数据对应的版本号发送至存储设备12中的。因此,该最新版本的业务数据对应的服务状态表征的服务状态为正常服务状态,上述服务状态是指第一服务器基于最新版本的业务数据为至少一个客户端提供相应业务服务的状态。

可选的,第二服务器14获取存储设备12中存储的业务数据对应的版本号的过程至少可以包括以下两种情况:第一种,第二服务器14可以主动从存储设备12中读取最新的业务数据对应的版本号;第二种,存储设备12可以主动将其中存储的最新的业务数据对应的版本号发送至第二服务器14。

步骤s320、若所述存储设备存储的版本号与所述第一版本号不相同,不执行基于所述第一业务数据对所述第二业务数据进行更新的操作。

可选的,存储设备12中存储的版本号为经第一服务器13检测无误的业务数据对应的版本号,因此第二服务器14可以将存储设备12存储的版本号与自身得到的第一版本号进行比较,若存储设备12存储的版本号与自身得到的第一版本号不相同,则表示自身得到的第一业务数据存在错误,因此不执行基于所述第一业务数据对所述第二业务数据进行更新的操作。

可选的,上述“不执行”至少可以包括以下两种情况:第一种情况下,禁止第二服务器14基于第一业务数据对自身存储的第二业务数据进行更新;第二种情况下,若存储设备12存储的版本号与第二服务器14得到的第一业务数据对应的第一版本号不相同,则结束,即若存储设备12存储的版本号与第二服务器14得到的第一业务数据对应的第一版本号不相同,则第二服务器14不再进行任何操作。

本申请公开了一种应用于服务器集群10中第二服务器14的业务数据更新方法,第二服务器14获取第一业务数据和第一业务数据对应的第一版本号后,不会直接基于第一业务数据对自身存储的第二业务数据进行更新,而是等待一段时间,若第一服务器13确定第一业务数据有误,则第二服务器14不会执行基于第一业务数据对自身存储的第二业务数据进行更新的操作。

即通过第一服务器13可以及时发现第一业务数据是否出错,在第一业务数据出错的情况下,由于仅有服务器集群10中部分服务器即第一服务器13基于第一业务数据对第二业务数据进行更新,所以仅再次更新第一服务器13中的第一业务数据即可,与目前若第一业务数据出错需要重新更新服务器集群10中所有服务器的业务数据而言,加快了更新速度。若第一业务数据出错能够导致服务器瘫痪,那么服务器集群10中仅有第一服务器13发生瘫痪,至少一个第二服务器14不会发生瘫痪。

上述步骤s320详细介绍了存储设备12存储的版本号与第一版本号不相同的情况下,第二服务器14所执行的操作。本申请的一个实施例,对存储设备12存储的版本号与第一版本号相同的情况进行说明。

本申请实施例中,若所述存储设备存储的版本号与所述第一版本号相同,第二服务器基于所述第一业务数据对所述第二业务数据进行更新,以使得所述第二服务器基于所述第一业务数据为所述至少一个客户端提供相应业务服务。

可选的,考虑到若所述存储设备12存储的版本号与所述第一版本号相同,则说明第二服务器14得到的第一业务数据无误,因此第二服务器14可以基于第一业务数据对自身存储的第二业务数据进行更新,从而保证了第二服务器14的第一业务数据与第一服务器13的第一业务数据的一致性。例如,针对具有同一种喜好特征的用户而言,该服务器集群10中各服务器所服务的所有用户都可以通过视频应用程序观看到某个广告,也即保证了服务器集群10中各服务器的业务数据的一致性。

为了本领域技术人员更加理解本申请实施例,下面结合图1对业务数据更新方法进行说明。接下来,结合图4,对本申请实施例提供的一种业务数据更新方法的信令图进行说明。

步骤s401、终端设备11将第一业务数据以及第一业务数据对应的第一版本号发送至服务器集群10中的各服务器(至少一台第一服务器13以及至少一台第二服务器14)。

步骤s402、第一服务器13基于第一业务数据更新自身存储的第二业务数据。

步骤s403、第一服务器13获取服务状态,若服务状态为正常服务状态,执行步骤s404;若服务状态为非正常服务状态,执行步骤s405。

可选的,第一服务器13基于第一业务数据更新完毕第二业务数据,可以运行该第一业务数据,并在设定时间段后获取服务状态,该服务状态是指第一服务器13基于第一业务数据为至少一个客户端提供相应业务服务的状态。

步骤s404、第一服务器13将第一业务数据对应的第一版本号存储至存储设备12。

步骤s405、若服务状态为非正常服务状态,则第一服务器13不执行将第一业务数据对应的第一版本号存储至存储设备12的操作。

由于是不执行,所以在图4中用“×”体现不执行。

步骤s406、第二服务器14获取存储设备12存储的最新版本号。

可选的,上述获取过程可以为存储设备12将自身存储的最新版本号发送至第二服务器14,或者,第二服务器14从存储设备12中读取其中存储的最新版本号。

若服务状态为正常服务状态,存储设备12存储的最新版本号为第一版本号;若服务状态表征服务状态为非正常服务状态,存储设备12存储的最新版本号为第二版本号。

步骤s407、若第二服务器14检测到存储设备12存储的最新版本号与自身从终端设备11得到的第一版本号相同,则第二服务器14基于第一版本号对应的第一业务数据更新自身存储的第二业务数据。

若第二服务器14获取的存储设备12存储的最新版本号与自身从终端设备11得到的第一版本号不相同,则第二服务器14不执行基于第一版本号对应的第一业务数据更新自身存储的第二业务数据的操作。

上述本申请实施例中详细描述了方法,对于本申请实施例的方法可采用多种形式的装置实现,因此本申请实施例还提供了两种装置,下面给出具体的实施例进行详细说明。

本申请实施例提供了一种应用于第一服务器13的装置,参见图5,图5为本申请实施例提供的一种应用于第一服务器13的装置结构示意图。

如图5所示,该装置可以包括:

第一业务组件51,用于获取第一业务数据;

第一预检组件52,用于获取所述第一业务数据对应的第一版本号,若检测到所述第一版本号与自身存储的第二版本号不相同,控制所述第一业务组件51执行基于所述第一业务数据对所述第二业务数据进行更新的操作;所述第二版本号为所述第一服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第一服务器得到的最新版本的业务数据;

所述第一业务组件51,还用于获取服务状态,将所述服务状态发送至所述第一预检组件52;所述服务状态是指所述第一服务器基于所述第一业务数据为至少一个客户端提供相应业务服务的状态;

所述第一预检组件52还用于:若所述服务状态为非正常服务状态,不执行将所述第一业务数据对应的第一版本号存储至存储设备的操作,所述存储设备存储有所述第二业务数据对应的第二版本号,使得与所述第一服务器属于同一服务器集群的至少一个第二服务器在从所述存储设备得到的所述第二版本号与自身得到的所述第一业务数据对应的第一版本号不相同的情况下,不执行基于所述第一业务数据对自身第二业务数据进行更新的操作。

在一可选实施例中,上述第一预检组件52还可以用于:

若所述服务状态为正常服务状态,执行将所述第一业务数据对应的第一版本号存储至所述存储设备的操作,使得与所述第一服务器属于同一服务器集群的至少一个所述第二服务器在从所述存储设备得到的所述第一版本号与自身得到的所述第一业务数据的第一版本号相同的情况下,执行基于所述第一业务数据对自身存储的第二业务数据进行更新的操作。

在一可选实施例中,上述第一业务组件51在执行获取服务状态的步骤时具体用于:

以第一时刻为起始时刻,获取设定时间段内的所述服务状态,所述第一时刻为基于所述第一业务数据对所述第二业务数据更新完毕的时刻。

在一可选实施例中,上述第一业务组件51在执行获取设定时间段内的所述服务状态的步骤时具体用于:

获取所述设定时间段内所述第一服务器为所述至少一个客户端提供相应业务服务的平均响应时间;

和/或,

获取所述设定时间段内所述至少一个客户端在所述第一业务数据对应的业务服务下针对所述第一服务器的每秒查询率;

和/或,

获取所述设定时间段内所述第一服务器基于所述第一业务数据为所述至少一个客户端提供指定信息的曝光量。

在一可选实施例中,上述第一业务组件51还可以用于:

若所述平均响应时间小于或等于第一阈值,所述服务状态为正常服务状态;

和/或,

若所述每秒查询率大于或等于第二阈值,所述服务状态为正常服务状态;

和/或,

若所述指定信息的曝光量大于或等于第三阈值且小于或等于第四阈值,所述服务状态为正常服务状态。

本申请实施例提供了一种应用于第二服务器14的装置,参见图6,图6为本申请实施例提供的一种应用于第二服务器14的装置结构示意图。

如图6所示,该装置可以包括:

第二业务组件61,用于获取第一业务数据;

第二预检组件62,用于获取所述第一业务数据对应的第一版本号,若检测到所述第一版本号与自身存储的第二版本号不相同,获取存储设备中存储的业务数据的版本号;所述第二版本号为所述第二服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第二服务器得到的最新版本的业务数据;

其中,所述存储设备用于存储当前时间最新版本的业务数据对应的版本号,且所述最新版本的业务数据对应的服务状态为正常服务状态,所述服务状态是指第一服务器基于所述最新版本的业务数据为至少一个客户端提供相应业务服务的状态,所述第一服务器与所述第二服务器属于同一服务器集群;

所述第二预检组件62,还用于:若所述存储设备存储的版本号与所述第一版本号不相同,不触发所述第二业务组件61执行基于所述第一业务数据对所述第二业务数据进行更新的操作。

在一可选实施例中,上述第二预检组件62还可以用于:

若所述存储设备存储的版本号与所述第一版本号相同,触发所述第二业务组件61执行基于所述第一业务数据对所述第二业务数据进行更新的操作,以使得所述第二服务器14基于所述第一业务数据为所述至少一个客户端提供相应业务服务。

本申请实施例提供了一种应用于第一服务器13的设备。可选的,图7示出了应用于第一服务器13的设备硬件结构框图,参照图7,应用于第一服务器13的设备的硬件结构可以包括:至少一个处理器71,至少一个通信接口72,至少一个存储器73和至少一个通信总线74;

在本申请实施例中,处理器71、通信接口72、存储器73、通信总线74的数量为至少一个,且处理器71、通信接口72、存储器73通过通信总线74完成相互间的通信;

处理器71可能是一个中央处理器cpu,或者是特定集成电路asic

(applicationspecificintegratedcircuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;

存储器73可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory)等,例如至少一个磁盘存储器;

其中,存储器73存储有程序,处理器71可调用存储器73存储的程序,所述程序用于:

获取第一业务数据以及所述第一业务数据对应的第一版本号;

若检测到所述第一版本号与自身存储第二版本号不相同,基于所述第一业务数据对所述第二业务数据进行更新;所述第二版本号为所述第一服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第一服务器得到的最新版本的业务数据;

获取服务状态,所述服务状态是指所述第一服务器基于所述第一业务数据为至少一个客户端提供相应业务服务的状态;

若所述服务状态为非正常服务状态,不执行将所述第一业务数据对应的第一版本号存储至存储设备的操作,所述存储设备存储有所述第二业务数据对应的第二版本号,使得与所述第一服务器属于同一服务器集群的至少一个第二服务器在从所述存储设备得到的所述第二版本号与自身得到的所述第一业务数据对应的第一版本号不相同的情况下,不执行基于所述第一业务数据对所述第二业务数据进行更新的操作。

可选的,所述程序的细化功能和扩展功能可参照上文描述。

本申请实施例提供了一种应用于第二服务器14的设备。可选的,图8示出了应用于第二服务器14的设备硬件结构框图,参照图8,应用于第二服务器14的设备的硬件结构可以包括:至少一个处理器81,至少一个通信接口82,至少一个存储器83和至少一个通信总线84;

在本申请实施例中,处理器81、通信接口82、存储器83、通信总线84的数量为至少一个,且处理器81、通信接口82、存储器83通过通信总线84完成相互间的通信;

处理器81可能是一个中央处理器cpu,或者是特定集成电路asic(applicationspecificintegratedcircuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;

存储器83可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory)等,例如至少一个磁盘存储器;

其中,存储器83存储有程序,处理器81可调用存储器83存储的程序,所述程序用于:

获取第一业务数据以及所述第一业务数据对应的第一版本号;

若检测到所述第一版本号与自身存储的第二版本号不相同,获取存储设备中存储的业务数据对应的版本号;所述第二版本号为所述第二服务器存储的第二业务数据对应的版本号,所述第二业务数据为前一次业务数据更新过程中,所述第二服务器得到的最新版本的业务数据;

其中,所述存储设备用于存储当前时间最新版本的业务数据对应的版本号,且所述最新版本的业务数据对应的服务状态为正常服务状态,所述服务状态是指第一服务器基于所述最新版本的业务数据为至少一个客户端提供相应业务服务的状态,所述第一服务器与所述第二服务器属于同一服务器集群;

若所述存储设备存储的版本号与所述第一版本号不相同,不执行基于所述第一业务数据对所述第二业务数据进行更新的操作。

可选的,所述程序的细化功能和扩展功能可参照上文描述。

本申请实施例还提供一种应用于第一服务器13的可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述应用于第一服务器13业务数据更新方法。

本申请实施例还提供一种应用于第二服务器14的可读存储介质其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述应用于第二服务器14业务数据更新方法。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置或系统类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1