身份标识、路由数据生成方法、装置及服务器与流程

文档序号:16245572发布日期:2018-12-11 23:32阅读:145来源:国知局
身份标识、路由数据生成方法、装置及服务器与流程

本申请属于计算机数据处理技术领域,尤其涉及一种身份识别标识、路由数据生成方法、装置及服务器。

背景技术

随着计算机和互联网的迅速发展,目前很多用户会通过互联网进行产品交易。而很多互联网企业的战略布局已经不局限于国内市场,开始逐步开拓国际市场,实施互联网应用的全球化部署。

在企业全球化部署过程中,企业往往希望基于用户的地理位置信息提供更好的交易就近服务。如线上购物平台可以在不同的国家或地区分别部署包含一台或多台服务器的单元机房,该单元机房可以与全球总服务器建立连接,根据建立的路由规则将用户的请求或其他特征信息路由到相应的国家或地区单元机房,以供用户所属的本地服务器使用。从体量上来看,企业全球化部署具备更多潜在用户基数,因此,在面临全球化海量数据的情况下,路由数据及路由规则的合理规划及优化设计就显得十分重要。目前,在现有的一些路由规划设计中,通常需要对每个用户进行有效的路由编码,在路由编码中常常需要设置有标识用户属性的信息字段。如一种业内的路由编码设计方式中,需要使用若干个bit(如至少5bit)来标识用户路由编码中的用户属性,具体的可以用1bit标识用户买卖属性,1bit标识用户状态属性,其余的3bit(或者更多bit)用来标志用户所归属区域。如果基于一些业务的需要,路由编码的用户属性中还可以包括更多的字节,那么相应的路由开销字节会更多。

在全球化战略部署过程中,企业所涉及到的国家可能越来越多,相应的用户的总量和增长量往往也是巨大的。在海量用户数据的情况下,对路由服务器的存储和读写处理能力要求也越来越高,因此,路由数据及路由的合理规划及优化设计就显得十分重要。假如某购物网站服务于全球50亿用户,单个用户即使采用5bit来标志用户属性来进行路由编码,那么这50亿用户构建的路由数据在不进行分区段的前提下,仅用户属性部分占用的存储空间大约为:50亿*5/1024/1024/1024/8=2.9gb存储空间。随着企业业务的不断开拓发展,用户数据总量还会有进一步增加。显然,这样庞大的路由数据存储开销会不断增加路由服务器存储和读写负载压力,降低系统读写性能,延长用户服务请求的处理时间,降低用户服务体验。



技术实现要素:

本申请目的在于提供一种身份识别标识、路由数据生成方法、装置及服务器,采用预先设置用户分组策略在生成用户id(identification,身份识别标识)时对与用户路由数据相关联的维度信息进行干预,实现减少用户的路由数据的信息量,进而降低路由数据存储开销,提高路由数据读写效率,提升整体系统性能。

本申请提供的一种生成路由数据的处理方法、装置及服务器是这样实现的:

一种身份标识生成方法,所述方法包括:

接收用户的注册请求消息,所述注册请求消息中包括预定类型的用户属性字段;

根据所述用户属性字段确定所述用户的身份标识所属的分组;

按照所述分组所对应的预定编码区间生成所述用户的身份识别标识。

一种生成路由数据的处理方法,所述方法包括:

获取用户的身份识别标识,所述身份识别标识包括采用上述一种生成身份识别标识的处理方法生成;

基于所述用户识别标识和路由编码的属性信息进行路由编码,生成所述用户的路由数据,所述路由编码的属性信息被设置成,包括剔除生成所述身份识别标识时的所述预定类型的用户属性字段。

一种身份标识生成装置,所述装置包括:

接收模块,用于接收用户的注册请求消息,所述注册请求消息中包括预定类型的用户属性字段;

分组模块,用于根据所述用户属性字段确定所述用户的身份标识所属的分组;

标识生成模块,按照所述分组所对应的预定编码区间生成所述用户的身份识别标识。

一种生成路由数据的处理装置,包括:

信息获取模块,用户获取用户的身份识别标识,所述身份识别标识包括采用上述一种身份标识生成装置生成;

路由编码模块,用于基于所述用户识别标识和路由编码的属性信息进行路由编码,生成所述用户的路由数据,所述路由编码的属性信息被设置成,包括剔除生成所述身份识别标识时的所述预定类型的用户属性字段。

一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现以下步骤:

接收用户的注册请求消息,所述注册请求消息中包括预定类型的用户属性字段;

根据所述用户属性字段确定所述用户的身份标识所属的分组;

按照所述分组所对应的预定编码区间生成所述用户的身份识别标识。

一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现以下步骤:

获取用户的身份识别标识,所述身份识别标识包括计算机执行权利要求18所述的可读存储介质上的指令生成;

基于所述用户识别标识和路由编码的属性信息进行路由编码,生成所述用户的路由数据,所述路由编码的属性信息被设置成,包括剔除生成所述身份识别标识时的所述预定类型的用户属性字段。

一种路由服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现以下步骤:

接收用户的注册请求消息,所述注册请求消息中包括预定类型的用户属性字段;

根据所述用户属性字段确定所述用户的身份标识所属的分组;

按照所述分组所对应的预定编码区间生成所述用户的身份识别标识。

一种路由服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现以下步骤:

获取用户的身份识别标识,所述身份识别标识包括:采用根据请求消息中预定类型的用户属性字段确定出用户的身份标识所属的分组,并按照所述分组所对应的预定编码区间生成身份识别标识;

基于所述用户识别标识和路由编码的属性信息进行路由编码,生成所述用户的路由数据,所述路由编码的属性信息被设置成,包括剔除生成所述身份识别标识时的所述预定类型的用户属性字段。

一种生成身份识别标识的处理方法,所述方法包括:

基于用户的属性字段,确定所述用户的身份标识所属的分组;

根据所述分组,将用户划分入对应的预定编码区间;

基于所述预定编码区间,生成所述用户的身份识别标识。

本申请提供的一种身份识别标识、路由数据生成方法、装置及服务器,可以先确定生成用户id时要压缩的用户属性字段,以所述用户属性字段划分用户不同的分组。这样,在生成用户id时可以将原本id中包含的用户属性字段的信息提取到用户id的索引数据中,以减少对用户进行路由编码时处理的bit位,进而可以实现降低路由数据的存储开销。本申请利用在同一个预定类型的用户属性字段的维度下,用户具有一定程度的路由数据相关性,进而提取出共性路由编码信息,在生成用户id时将该共性的路由编码信息提取到索引数据中。这样在进一步生成用户id时即可实现减少用户的路由数据的存储开销,减少用户属性的标识信息,从而实现在不影响索引到用户的情况下减少用户的路由数据bit位,实现路由数据压缩,可以有效降低路由服务器的内存读写负载压力,提高系统整体读写性能。

附图说明

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

图1是本申请提供的一种身份识别标识生成方法一种实施例的方法流程图;

图2是本申请按照国家维度对用进行维度划分的一种实施场景示意图;

图3是本申请提供的种生成路由数据的处理方法一个实施例的方法流程示意图;

图4是本申请提供的一种生成路由数据的处理方法另一种实施例的方法流程示意图;

图5是本申请提供的一种生成路由数据的处理方法另一种实施例的方法流程示意图;

图6是本申请提供的一种候选数据压缩算法与数据离散度对应关系示意图;

图7是本申请提供的一种生成路由数据的处理方法的另一种实施例的方法流程示意图;

图8是基于本申请所述路由数据建立的一种分层路由数据中心的构架示意图;

图9是基于本申请所述路由数据建立的另一种实施例的分层路由构架的示意图;

图10是本申请提供一种身份标识生成装置一种实施例的模块结构示意图;

图11是本申请提供的一种生成路由数据的处理装置一种实施例的模块结构示意图;

图12是本申请提供的一种生成路由数据的处理装置另一种实施例的模块结构示意图;

图13是本申请提供的一种生成路由数据的处理装置另一种实施例的模块结构示意图;

图14是本申请提供一种生成路由数据的处理装置一种实施例的模块结构示意图。

具体实施方式

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

图1是本申请所述一种身份识别标识生成方法一种实施例的方法流程图。虽然本申请提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者部分合并后更少的操作步骤或模块单元。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本申请实施例或附图所示的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置或终端产品应用时,可以按照实施例或者附图所示的方法或模块结构进行顺序执行或者并行执行(例如并行处理器或者多线程处理的环境、甚至包括分布式处理的实施环境)。

一般的,路由数据中常常存在与用户某个维度的相关性较大的信息,如以地理位置为维度时,在相同地理区域的用户具备与该区域位置有较强的路由数据相关性,在大多数场景下,相同区域的用户的区域维度信息都是等值。而在路由编码时,标识的用户属性中常常包括这些与路由数据相关性较大的维度的信息。因此,本申请利用这些与路由数据相关性较大的用户属性,改变原有路由数据中路由编码结构,在生成用某个维度的用户身份标识时即将该个维度的用户属性提取出来作为用户的索引数据,减少用户属性的标识信息,从而实现在不影响寻找到用户的情况下减少路由数据的bit位,实现路由数据压缩。本申请首先提供的一种身份识别标识生成方法的一个实施例如图1所示,具体的所述方法可以包括:

s1:接收用户的注册请求消息,所述注册请求消息中包括预定类型的用户属性字段;

s2:根据所述用户属性字段确定所述用户的身份标识所属的分组;

s3:按照所述分组所对应的预定编码区间生成所述用户的身份识别标识。

一般的,在路由数据编码处理过程中使用到的用户属性信息可以包括与用户在某种维度上具有相关性的用户路由特征值,这种维度可以包括用户的地理位置或用户买家卖家属性、甚至是职业属性等多种类型。一般的,可以使用一个用户属性字段来标识用户的某个属性信息,如使用3bit来标识用户所处国家的属性信息、1bit来标识用户是买家还是卖家的属性信息等。在路由数据编码时常常需要选用一个或多个用户的用户属性字段作为路由数据中标志用户属性的bit位信息。

本申请所述方法的一种实施例中,所述预定类型的用户属性字段包括与用户的路由数据相关联的至少一个用户属性信息。具体的,若原设计的路由数据中包括地理位置、买家卖家属性、用户状态属性三个类型的用户属性字段,则在生成用户的身份识别标识的处理过程中,若以地理位置对用户进行分组,则可以选择地理位置作为所述预定类型的用户属性字段。所述的注册请求消息中可以包含用户注册时的地理位置信息,如来自哪个国家。如果获取的是用户所在城市的地理位置信息,也可以根据城市所属的国家来确定出用户所属国家进而确定用户属性字段。当然,一种方式中可以在生成注册请求消息之前确定出用户属性字段,然后添加到注册请求消息中,其他实施方式中,也可以在接收到请求消息之后,根据例如城市的地理位置信息确定出预定类型为国家的用户属性字段的对应信息。

例如原设计的路由数据编码时所需使用5bit的用户属性信息,其中包括1bit标识用户买卖属性,1bit标识用户状态属性,其余的3bit用来标志用户所归属区域。那么,本申请实施例可以使用1bit的用户买卖属性字段和/或3it的用户归属区域的属性字段作为所述预定类型的用户属性字段。进而可以以该预定类型的用户属性字段对用户进行分组。

本实施例中可以先确定生成用户的路由数据时所需剔除的用户属性字段,并根据所述用户属性字段划分用户的分组。在接收到用户的注册请求消息时,可以基于用所述注册请求消息中的用户属性字段对应的维度来生成用户id。在本申请实施例中,通常选取全部(或大部分)用户在某个维度上具有相同属性信息作为所述用户属性字段,例如,如用户的地理位置标识、用户买家卖家的身份标识等。

本实施例中可以先确定出至少一个生成用户身份标识所需使用的用户属性字段,然后依据用户属性字段划分用户的分组。具体的一个示例中,如前述采用5个bit来标识用户属性字段的实施场景中,用户属性字段可以包括标识用户属于买家还是卖家的属性、标识用户迁移状态的属性、标识用户所归属区域的属性信息等。本申请的一个实施例中所述的预定类型可以使用用户所在的地理位置信息。具体的例如可以以用户所归属的国家,或者预先按照自定义的方式对全球范围划分若干大区,以用户所归属的大区作为共性属性维度。基于全球化战略部署应用场景的考虑,本申请提供的一种生成身份识别标识的处理方法的一种实施方式中,

s101:所述预定类型的用户属性字段包括用户所处地理位置的地理信息。

所述根据所述用户属性字段确定所述用户的身份标识所属的分组,包括:根据所述地理信息,将属于相同地理位置划分区域的用户划分至同一个分组。

本实施例中所述的预定类型可以为用户所处的地理位置信息,相应的,可以将属于相同地理位置划分区域内的用户划分为同一个分组。以用户所在的地理位置对用户进行划分,使用相同地理区域内的用户的地理位置信息作为用户的分组,满足多数实际应用场景的用户id需求,以及后续本申请提供的基于此的路由数据压缩处理需求,从地理位置这个维度来减少存储开销的实际数据压缩力度也更加明显。根据所述字段信息,将属于相同地理位置划分区域的用户划分为相同的分组,同时可以设置所述分组中生成用户身份识别标识所使用的预定编码区间,本实施例中所述地理位置划分区域与用户的路由数据中标识用户所属区域的属性信息相关联。

具体的一个示例如图2所示,图2是本申请按照国家维度对用进行用户进行分组的一种实施场景示意图。在图2中,例如南美区域共分配1000万个用户id,则可以将南美区域划分出10个国家,每个国家分配100万个用户id。则在用户所属的国家维度上对用户进行分组的结果如图2所示,巴西、智利用户各100万,分别被分在南美区域的第一分组和第二分组,巴西用户id的生成范围可以设置为在1≤id编号顺序100≤万,智利用户id的生成范围可以设置为在(100万+1)≤id编号顺序≤200万。当然,其他的实施方式中,每个国家内具体分配的用户id可以设置为不相同,如对于国内人口数量较多的国家可以为其分配更多的用户id,如设置巴西用户id生成范围为1~120万之间。

在对用户进行分组时,可以同时划分所述用户的分组中用户的用户身份识别标识所使用的编码区间。一般的,不同的分组可以设置不同区段的编码区间,同一个分组内的多个用户的用户身份识别标识可以采用相邻编号的连续编码方式。具体的,本申请提供的所述方法的另一个实施例中,所述按照所述分组所对应的预定编码区间生成所述用户的身份识别标识,可以包括:

在所述预定编码区间内,采用对所述身份识别标识连续编码的方式生成所述用户的身份识别标识,所述连续编码包括基于身份识别标识的间隔步长依次生成身份识别标识。

例如生成上述巴西用户id的时候,身份识别标识的间隔步长为1bit,那么当最近一次生成的第n个用户id编码为“1001001000010000”,那么紧接着生成的下一个(n+1)巴西用户的id可以为上一个巴西用户id的连续编码的相邻的下一个编码,即可以为“1001001000010001”。这样,连续编码的方式使得相同分组内的身份识别标识存在较多相同的bit位(其他实施场景中可以是字节、字段等)的可能,并且身份识别标识的数据离散度较低,波动较小,可以进一步为后续数据压缩提供较大的压缩空间和压缩效果。

当然,其他的实施例中也可以选取其他的用户属性作为用户分组的依据。如在一些应用场景中,若普遍性的大批用户存在与买卖关系维度较强的相关性,则可以以所述买卖关系作为预定类型实施生成用户id的用户分组策略。

在进行了用户分组后,当触发生成用户的身份识别标识时,可以按照用户所在分组的编码区间生成所述用户的身份识别标识。所述接收用户的注册请求消息可以包括用户主动注册时触发的注册请求消息,也可以包括服务器确定的需要新建一个新用户时需要生成的注册请求消息(例如用户漫游到其他区域,此时可以触发服务器用户的注册请求消息,生成一个新的用户身份标识)。用户在所述用户属性字段上对应一个分组,然后可以按照所述用户所在分组的编码区间生成所述用户的用户身份标识。具体的可以按照预先设计的标识生成规则生成用户的身份识别标识(用户id)。这里所述的标识生成规则可以是指在一个用户分组内,每个用户id采用的编码形式、使用的字符、数据类型、长度、id的编码规则等。假如某个新注册用户的注册地理位置为巴西,则可以在为巴西分配的用户id号段内生成该新注册用户的身份识别标识。

在本申请实施例中,可以设置用户的分组内生成的每个用户的身份识别标识的总bit位长度相同,如巴西国家的每个用户id为128bit,属于相同分组的身份识别标识可以具有相同的比特位(bit)长度。

这样,同一个分组内的每个用户的身份识别标识均有相同的bit为长度,使得用户id长度固定,可以为后续路由数据压缩存储提供较大的数据压缩处理空间和处理的便利性。当然,其他的实施例中也可以设置用户的用户id长度也可以不相同,如可以设置有的用户占用128bit,有的用于可以占用64bit等。本实施例生成的用户id可以采用二进制位存储。一般的,在存储用户id时可以添加标识用户占用bit位个数字段信息,以便在连续用户id存储时区分不同的用户id。所述身份识别标识以匹配字节为最小存储单元进行存储,所述匹配字节被设置成读写所述身份识别标识的中央处理器一次数据处理的字节长度。这样,存储的身份识别标识数据与cpu单次读写的字节长度相同,可以降低cpu运算周期,同时又提高了cpu的数据读写性能,进而提高整个系统的数据读写性能。

由于本申请实施例中在生成用户id时即对用户进行了某个维度上的分组,因此在实际实施应用场景中,可以将这个分组的维度的用户属性字段提取到用户的索引数据中。例如当使用的用户属性字段为用户所处的国家时,与国家对应的3bit就可以提取到元数据索引中,将原先使用的5bit的用户的属性信息缩减为2bit。在此基础上,寻找特定用户id的操作,就变成了对整个数据结构的hash、求余取模运算等,并且后续配以wordsize(字长为计算机一次处理的字节长度,如64位字长64bit)为最小存储分配单元。这样,在降低了cpu运算cycle(周期)同时,又提供了高效的读写性能。进一步的,在路由编码时可以使用这样的用户身份标识生成方式生成的身份识别标识,并结合其他的路由编码的用户属性字段生成路由数据。因此,本申请还提供一种生成路由数据的处理方法,具体的一种实施例中,所述方法可以包括:

s10:获取用户的身份识别标识,所述身份识别标识包括采用上述一种生成身份识别标识的处理方法中的任意一种方法生成;

s20:基于所述用户识别标识和路由编码的属性信息进行路由编码,生成所述用户的路由数据,所述路由编码的属性信息被设置成,包括剔除生成所述身份识别标识时的所述预定类型的用户属性字段。

图3是本申请提供的一种生成路由数据的处理方法一个实施例的方法流程示意图。本申请一个实施例可以预先干预用户id的生成策略,确定出至少一个预定类型的用户属性字段,在该用户属性字段的维度上对用户进行分组,并可以将这个用户属性字段提取到用户的索引数据中。因此,在进行路由编码生成用户的路由数据所需要的用户的属性信息中可以不需要包括前述用户分组时采用的用户属性字段。如上述实施例应用场景中,若在路由编码生成路由数据时的用户属性字段为国家,则因为生成用户id时已经将国家这个维度的用户属性字段移到用户的索引数据中,因此实际生成用户的路由数据时可以不用添加国家这个用户属性字段的属性信息。可以根据用户id和1bit的用户买卖属性信息、1bit的用户迁移状态属性信息或者还可以包括其他的属性信息生成路由数据。

生成的用户的路由数据可以有多种存储方式。本申请所述一种生成路由数据的处理方法的一种实施例中,生成的路由数据可以按照用户身份识别标识所属的分组进行分组存储,生成路由数据分组。这样,不同的预定类型的用户属性字段可以相应的对应一个路由数据分组。这为后续路由数据的压缩提供了可能。

生成的用户的路由数据可以有多种数据存储格式。本申请所述一种生成路由数据的处理方法的另一种实施例中,可以将所述路由数据以匹配字节为最小存储单元进行存储,所述匹配字节被设置成读写所述路由数据的中央处理器一次数据处理的字节长度。

具体的一个示例中,如路由服务器的cpu(centralprocessingunit,cpu,中央处理器)。一次处理的字节长度如64位bit,则可以每64位bit为最小存储单元来存储生成的路由数据。这样,存储的路由数据与cpu单次读写的字节长度相同,可以降低cpu运算周期,同时又提高了cpu的数据读写性能,进而提高整个系统的数据读写性能。

需要说明的是,本申请的一些实施例中在生成所述路由数据时可以不需要使用到用户属性字段,如直接根据用户的身份识别标识,或者根据用户识别标识和其他非用户属性字段的信息生成路由数据。在一些应用场景中,若仅以用户的身份识别标识来生成路由数据,则所述的基于所述用户识别标识和路由编码的属性信息进行路由编码,可以理解为此时用于路由编码的用户属性字段已被使用过(例如生成用户id时已被提取到索引数据中),仍然未脱离本申请实施例所述的基于所述用户识别标识和路由编码的属性信息进行路由编码的实施方式。

本申请利用在同一个与用户某个属性维度关联性较大的用户属性字段下,如同一个区域地理位的用户具有一定程度的路由数据相关性,进而提取出该维度的用户属性字段。在生成用户id时可以将该维度的属性数据提取到索引数据中,在生成用户id时即可实现减少路由数据的存储开销,进而实现减少路由编码时生成的路由数据的存储开销。这样可以降低路由服务器存储和读写负载压力,提高系统整体读写性能。

上述实施例通过对用户的id生成算法进行干预,采用对与用户相关性较强的某个属性维度进行用户分组,使得在大多数应用场景下,相同属性维度下的用户属性是等值的,如同一个国家分组下的用户的区域状态属性都是同一个国家代码。这样的提取出共性信息的用户id生成策略以及路由数据生成方法为数据压缩提供了可能。因此,进一步的,本申请基于上述实施例所述的实施方案生成的路由数据,可以提供进行进一步的数据压缩处理的实施方案,以减少存储开销。图4是本申请提供的一种生成路由数据的处理方法另一种实施例的方法流程示意图,如图4所示,所述方法还可以包括:

s30:选出所述路由数据分组中数据变更频率符合预设要求的候选分组,按照选取的数据离散度计算方法计算所述候选分组中的路由数据的数据离散度;

s40:若所述数据离散度符合预先设置的压缩阈值要求,则采用预设的数据压缩策略对所述候选分组内的路由数据进行压缩,形成压缩后路由数据。

本实施例对用户的路由数据进行压缩的实施过程中,可以先筛选出路由数据分组中数据变更频率较低的分组,以这些分组作为数据压缩的候选分组。具体的数据变更要求可以自定义设置,例如可以选取一天更新变更一次的路由数据分组,或者一些实施场景中路由数据分组中路由数据更新周期较长,如五天或者一周更新一次,则可以设置低于三天更新一次的数据变更频率的路由数据分组为候选分组。

然后可以采用选取的数据离散度计算方法计算每个候选分组中路由数据的数据离散度。需要说明的是,本实施例在计算用户数据离散度时可以将一个候选分组内所包括的所有用户的路由数据作为一个整体数据组,然后计算这个整体数据组的数据离散度。本实施例中所述数据离散度计算方法可以由作业人员根据数据处理需求选取合适的算法,如极差、平均差、标准差或者用户自定义的数据离散度计算法等。

若候选分组的离散度符合预先设置的压缩阈值要求,则可以表示有较好的数据压缩空间,可以对该候选分组内的路由数据进行压缩,以减少数据存储空间。因此,本实施例中可以预先选择某个数据压缩算法对符合数据离散度要求的候选分组中的路由数据进行压缩,执行数据压缩后则原先候选分组中的路由数据变成了压缩后路由数据。本实施例中所述数据压缩策略可以为选取的标准或自定义的数据压缩算法,或者其他数据压缩的处理方式,具体的可以由作业人员根据数据处理需求预先选取确定,如可以使用bitset经典算法中的run-length-encoded算法作为数据压缩策略来对路由数据执行压缩。

具体的一个示例中,如在选出数据变更频率低于一天一次的巴西分组,然后对巴西分组中的路由数据1101010000111111(16位)进行离散度计算。计算结果为该巴西分组内的数据离散度符合压缩阈值要求,则开始执行压缩。如巴西分组内的用户id中连续2bit出现相同数值,即1101010000111111(16位),那么通过数据离散度预计算分析可知,可以采取数据压缩。最终的数据压缩结果可以表示成11300201211,其含义为11连续出现3次,接下来出现2个2bit的00,2个2bit的01,最后是11。当然,上述仅为实施本实施例的简略实施过程,实际的一个用户分组中所包含的路由数据通常是远远大于16位的,一个分组内若包含100万个用户,每个用户的路由数据均如上述实施例场景所述的减少3bit的国家维度的用户属性字段,则路由数据本身压缩量的效果就会很明显。一个国家维度的路由数据分组中的路由数据再进行再实施本实施例进行压缩,效果会更加显著。上述简单示例旨在阐明利用本申请提供的用户id生成策略使得生成用户id具有较强的相关性,为后续分组内的路由数据压缩提供了可能。

具体的实施处理过程中可以根据作业人员的设计需求选取合适的数据离散度计算方法和路由数据的压缩算法。压缩后形成的压缩后路由数据可以被存储在高可靠的nosql(非关系型数据库)中,可以构建生成路由表。当然,如前述所述,压缩后的路由数据仍然可以采用以所述匹配字节为最新存储单元进行存储,如64位的bit进行存储。利用本申请实施方案,可以利用基于用户分组的用户生成的路由数据(在此可以理解为在某个属性维度上的横向数据压缩)进行进一步的数据压缩(在此可以理解为将路由数据分组内基于数据离散度进行的数据压缩称为纵向数据压缩),可以实现大幅度节省路由数据存储开销,提高路由操作的读写性能。若结合上述以匹配字节为最小存储单元存储压缩后路由数据,则可以进一步提升读写性能。

本申请提供的一种生成路由数据的处理方法的另一种实施方式中,还可以实现动态数据压缩,可以根据每个分组的数据离散程度自适应的选取合适的压缩策略执行数据压缩。这样可以进一步的优化数据压缩方案,动态的自适应不同的数据环境,提高数据压缩处理的灵活性、扩展性和数据压缩效果。图5是本申请提供的一种生成路由数据的处理方法另一种实施例的方法流程示意图,如图5所示,在计算出所述数据离散度之后,所述方法还可以包括:

s50:从预先设置的候选压缩策略中选取出与计算得到的数据离散度相匹配的数据压缩策略;

相应的,所述采用预设的数据压缩策略对所述候选分组内的路由数据进行压缩,包括:采用所述相匹配的数据压缩策略对所述候选分组内的路由数据进行压缩。

本实施例中可以预先设置的对应不同数据离散度的数据压缩策略(多个压缩算法或执行策略/步骤),这些数据压缩策略可以预先存储在设置存储单元中,如将选取的多个数据压缩算法以及一种数据处理方式的执行策略都存储在构建的压缩算法栈中。然后根据计算得到的分组内数据的离散度从预先设置的至少两个候选压缩算法中选取对应的数据压缩策略,进而来压缩候选分组内的路由数据。具体的数据离散度与数据压缩算法的对应关系可以如图6所示,图6是本申请提供的一种候选数据压缩算法与数据离散度对应关系示意图。数据离散度与数据压缩算法的对应关系可以是如y=ax的因变量y与自变量x的关系,也可以是自定义设置的区间对应关系,具体的匹配算法可以由作业人员根据实际应用场景的数据处理需求进行设置,本申请对此不作限制。

需要说明的是,另一种实施方式中,预先设置的候选压缩策略也可以包括不对路由数据进行压缩的执行策略。例如图6所示的,当数据离散度大于预定的预置c,则表示该分组内的数据离散度不需要进行压缩,则此时可以设置不执行路由数据的压缩。

利用本实施例提供的实施方案,可以动态的从预先设置的候选压缩算法中选取出最佳匹配的数据压缩策略来对路由数据进行压缩,可以自动适应不用候选分组的数据离散度情况,有效提高数据压缩效果,进而趋向于最佳策略的减少存储开销。

实施本申请实施例方案时可以根据压缩后的用户的路由数据设计生成路由表,将路由表存储到路由数据中心。基本上述所述的用户id生成方法、路由数据生成方法、数据压缩方法实现的路由数据压缩,本申请还可以进一步的对路由数据压缩后生成的路由表进行层次化分段设计,以建立可靠、高效的路由服务策略,如图7所示。具体的,本申请提供的一种生成路由数据的处理方法的另一种实施例,所述方法还可以包括:

s60:根据所述路由数据建立至少两级路由服务的分层路由数据,所述分层路由数据至少包括:存储单个路由数据分组的路由数据的子层路由数据、存储所有路由数据的根层路由数据。

图8是基于本申请所述路由数据建立的一种分层路由数据中心的构架示意图。根据所述路由数据可以建立至少两级路由服务的分层路由数据中心,所述分层路由数据中心可以设计成至少包括存储单个路由数据分组的路由数据的子层路由中心、存储所有路由数据的根层路由数据中心存储所有路由数据的根层路由数据中心。

压缩后的路由数据可以生成共性属性维度的本地路由数据中心,如国家级别的用户路由表(子层路由数据中心),所有国家的用户路由表汇总生成一个总的全球用户路由表(根层路由数据中心)。路由时,可以从到全球用户路由表中获取本地国家级的用户路由表,然后可以借助off-heap(堆外内存)共享内存的形式将本地国家级的用户路由表提供给多语言架构应用使用,实现进一步的数据处理。

上述实施例中描述了采用两级路由服务的分层路由构架。本申请其他的实施例中可以根据采用的共性属性维度、业务类型、用户分布等等选取不同的分层路由构架,来实现基于本申请提供的用户id生成策略、路由数据等的层次化分段路由表设计。图9是基于本申请所述路由数据建立的另一种实施例的分层路由构架的示意图,如图9所示,考虑到全球化战略部署应用场景,本申请提供的一种实施方式中,当生成所述身份标识使用的预定类型为国家时,所述分层路由数据被设计成,包括:

以用户所属的国家分组的路由数据作为国家路由表;

属于相同大区的国家对应的国家路由表构建生成大区路由表,所述大区包括预先基于国家的地理位置划分的分组区域;

汇总各个大区路由表生成全球用户中心路由表。

当共性属性维度为用户国家维度时,所述分层路由数据中心可以被设计成包括:

以用户国家维度的路由数据作为本地国家路由表的第一分层路由;

划分区域对应的大区路由表构成的第二分层路由,所述大区路由表包括将属于同一个划分区域的国家所对应的本地国家路由表汇总生成的路由表;

汇总各个大区路由表生成全球用户中心路由表的第三分层路由。

所述的划分区域通常可以包括以七大洲、五大洋的位置区域来划分国家所属的划分区域,当然也可以以其他地理划分方式实现所述划分区域的划分。每个划分区域可以对应一个大区路由表,该大区路由表汇总了该划分区域内的国家的本地国家路由表。

本申请提供的一种生成路由数据的处理方法,可以先确定生成用户id时要压缩的用户属性字段,以所述用户属性字段划分用户不同的分组。这样,在生成用户id时可以将原本id中包含的用户属性字段的信息提取到用户id的索引数据中,以减少对用户进行路由编码时处理的bit位,进而可以实现降低路由数据的存储开销。本申请利用在同一个预定类型的用户属性字段的维度下,用户具有一定程度的路由数据相关性,进而提取出共性路由编码信息,在生成用户id时将该共性的路由编码信息提取到索引数据中。这样在进一步生成用户id时即可实现减少用户的路由数据的存储开销,减少用户属性的标识信息,从而实现在不影响索引到用户的情况下减少用户的路由数据bit位,实现路由数据压缩,可以有效降低路由服务器的内存读写负载压力,提高系统整体读写性能。

本申请提供的生成身份识别标识的处理方法,对用户id的生成算法预先干预,为后续路由编码生成的数据提供大幅压缩的空间,进而实现降低,尤其是全球多国业务的海量数据情况下,可以有效降低服务器路由数据的存储和读写负载压力。具体的可以根据用户的属性字段将其划分到对应的分组,每个分组内可以对应的有对应的编码区间。然后可以在所述对应的编码区间内生成用户的id。因此,本申请提供的一种生成身份识别标识的处理方法的一种实施场景中,可以包括:

基于用户的属性字段,确定所述用户的身份标识所属的分组;

根据所述分组,将用户划分入对应的预定编码区间;

基于所述预定编码区间,生成所述用户的身份识别标识。

本实施例中所述的用户的属性字段,可以包括用户分布在的不同国家的编码字段,这里可以以用户所属的国家作为用户的身份识别标识的分组。例如用户涉及50个国家时,可以为每个国家预先设置相应的编码区段。当有新用户注册或者用户u1跨国家漫游时(通常当用户漫游时,在漫游的目的国家将该用户作为一个新的用户并为其配置资源),可以获取用户u1所处的国家,如为c1,则可以确定用户u1所属的分组为国家编码为c1的分组。若预先设计c1使用1~100万用户的编码区间段,则可以按序生成用户u1的id为“…000111011111”(假如c1中上一次生成的用户id“…000111011110”)。这样,在用户所属的国家属性字段上,使用统一分组并预定相应的编码区间,生成全球用户的id中可以不需要包含用户所归属区域的信息,因此后续路由编码生成的路由数据中减少了这个归属区域的用户属性维度的信息,降低路由数据存储压力。

假如某购物网站服务于全球50亿用户,单个用户即使采用5bit来标志用户属性来进行路由编码,那么这50亿用户构建的路由数据,仅用户属性部分占用的存储空间大约为:50亿*5/1024/1024/1024/8=2.9gb存储空间,即使用户属性部分使用3bti来标志用户所归属区域,也要占有约1.74g的存储空间。而采用本实施例方案,这1.74g的用户归属区域属性信息的存储空间可以不需要编码在路由数据中,有效减少服务器路由数据存储负载。上述的示例仅是简单描述了本申请实施方案的效果,实际的压缩的用户属性还可以包括除国家编码的其他维度的信息,如买卖关系。并且在全球业务海量数据的情况下,一些服务器实际压缩存储的路由数据可能会远远大于示例的1.7g。因此可以看出,本实施例方案在实际应用中可以有效降低数据存储开销,提升服务器读写性能。

基于上述实施例描述的生成路由数据的处理方法,本申请提供一种身份标识生成装置和生成路由数据的处理装置。所述的装置可以包括使用了本申请所述方法的系统(包括分布式系统)、软件(应用)、模块、组件、服务器等并结合必要的实施硬件的装置。基于同一创新构思,本申请提供的一种实施例中的装置如下面的实施例所述。由于装置解决问题的实现方案与方法相似,因此本申请具体的装置的实施可以参见前述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的具体的。图10是本申请提供一种身份标识生成装置一种实施例的模块结构示意图,如图10所示,所述装置可以包括:

接收模块101,可以用于接收用户的注册请求消息,所述注册请求消息中包括预定类型的用户属性字段;

分组模块102,可以用于根据所述用户属性字段确定所述用户的身份标识所属的分组;

标识生成模块103,可以用于按照所述分组所对应的预定编码区间生成所述用户的身份识别标识。

所述装置的另一种实施例中,当所述预定类型的用户属性字段包括用户所处地理位置的地理信息时,所述分组模块102根据所述用户属性字段确定所述用户的身份标识所属的分组包括:

根据所述地理信息,将属于相同地理位置划分区域的用户划分至同一个分组。

所述装置的另一种实施例中,所述装置还可以包括:

标识存储单元,用于以匹配字节为最小存储单元存储生成的身份识别标识,所述匹配字节被设置成读写所述身份识别标识的中央处理器一次数据处理的字节长度。

所述装置的另一种实施例中,所述标识生成模块103按照所述分组所对应的预定编码区间生成所述用户的身份识别标识,包括:

在所述预定编码区间内,采用对所述身份识别标识连续编码的方式生成所述用户的身份识别标识,所述连续编码包括基于身份识别标识的间隔步长依次生成身份识别标识。

图11是本申请提供的一种生成路由数据的处理装置一种实施例的模块结构示意图,如图11所示,包括:

信息获取模块201,可以用于获取用户的身份识别标识,所述身份识别标识包括采用权利要求10或11中的任意一种身份标识生成装置生成;

路由编码模块202,可以用于基于所述用户识别标识和路由编码的属性信息进行路由编码,生成所述用户的路由数据,所述路由编码的属性信息被设置成,包括剔除生成所述身份识别标识时的所述预定类型的用户属性字段。

本申请提供的一种身份标识生成装置,可以先确定生成用户的路由数据时要抽离剔除掉的用户属性标识,以所述用户属性标识划分不同的用户分组。这样,在生成用户id时可以将原本id中包含的用户属性标识的信息提取到用户id的索引数据中,以减少对用户进行路由编码时处理的bit位,进而可以实现降低用户的路由数据的存储开销。本申请提供的生成路由数据的处理装置利用在同一个属性维度下,用户具有一定程度的路由数据相关性,进而提取出共性维度信息,在生成用户id时将该维度的用户属性标识提取到索引数据中。这样在生成用户id时即可实现减少路由数据的存储开销,减少用户属性的标识信息,从而实现在不影响寻找到用户的情况下减少用户的路由数据bit位,实现路由数据压缩,可以有效降低路由服务器的内存读写负载压力,提高系统整体读写性能。

本申请利用这些与路由数据相关性较大的用户属性,改变原有路由数据中路由编码结构,在生成用某个维度的用户属性时即将该个维度的用户属性提取出来作为用户的索引数据,图12是本申请提供一种生成路由数据的处理装置另一种实施例的模块结构示意图,如图12所示,所述装置还可以包括:

存储单元203,可以用于将所述路由数据以匹配字节为最小存储单元进行存储,所述匹配字节被设置成读写所述路由数据的中央处理器一次数据处理的字节长度。

具体的一个示例中,如路由服务器的cpu(centralprocessingunit,cpu,中央处理器)。一次处理的字节长度如64位bit,则可以每64位bit为最小存储单元来存储生成用户的路由数据。这样,存储的路由数据与cpu单次读写的字节长度相同,可以降低cpu运算周期,同时又提高了cpu的数据读写性能,进而提高整个系统的数据读写性能。

由于本申请通过用户的id生成算法进行干预,采用对与用户相关性较强的某个共性属性维度进行用户分组,使得在大多数应用场景下,相同共性属性维度下的用户属性知道是等值的,如同一个国家分组下的用户的区域状态属性都是同一个国家代码。这样的提取出共性信息的用户id生成策略以及路由数据生成方法为数据压缩提供了可能。因此,进一步的,本申请基于上述实施例所述的实施方案生成的路由数据,可以提供进一步的路由数据压缩处理,以减少存储开销。图13是本申请提供的一种生成路由数据的处理装置另一种实施例的模块结构示意图,如图13所示,所述装置还可以包括:

离散度计算模块204,可以用于选出所述路由数据分组中数据变更频率符合预设要求的候选分组,按照选取的数据离散度计算方法计算所述候选分组中的路由数据的数据离散度;

数据压缩模块205,可以用于在所述数据离散度符合预先设置的压缩阈值要求时,采用预设的数据压缩策略对所述候选分组内的路由数据进行压缩,形成压缩后路由数据。

本实施例对路由数据进行压缩的实施过程中,可以先筛选出用户分组中数据变更频率较低的分组,以这些分组作为数据压缩的候选分组。具体的数据变更要求可以自定义设置,例如可以选取一天更新变更一次的路由数据分组,或者一些实施场景中路由数据分组中路由数据更新周期较长,如五天或者一周更新一次,则可以设置低于三天更新一次的数据变更频率的路由数据分组为候选分组。然后对采用选取的数据离散度计算方法计算每个候选分组中路由数据的数据离散度。需要说明的是,本实施例在计算用户数据离散度时可以将一个候选分组内所包括的所有用户的路由数据作为一个整体数据组,然后计算这个整体数据组的数据离散度。本实施例中所述数据离散度计算方法可以由作业人员根据数据处理需求选取合适的算法,如极差、平均差、标准差以及自定义的数据离散度算法等。

若候选分组的离散度符合预先设置的压缩阈值要求,则可以表示可以对该候选分组内的路由数据进行压缩,以减少数据存储空间。可以预先选择某个数据压缩算法对符合数据离散度要求的候选分组中的路由数据进行压缩,执行数据压缩后则原先候选分组中的路由数据变成了压缩后路由数据。本实施例中所述数据压缩算法可以由作业人员根据数据处理需求预先选取确定,如可以使用bitset经典算法中的run-length-encoded算法来对路由数据执行压缩。具体的实施处理过程中可以根据作业人员的设计需求选取合适的数据离散度计算方法和路由数据的压缩算法。

压缩后形成的压缩后路由数据可以被存储在高可靠的nosql(非关系型数据库)中,可以构建生成路由表。

本申请提供的一种生成路由数据的处理方法的另一种实施方式中,还可以实现动态数据压缩,可以根据每个分组的数据离散程度自适应的选取合适的压缩策略执行数据压缩。这样可以进一步的优化数据压缩方案,动态的自适应不同的数据环境,提高数据压缩处理的灵活性、扩展性和数据压缩效果。图14是本申请提供一种生成路由数据的处理装置一种实施例的模块结构示意图,如图14所示,所述装置还可以包括:

压缩算法匹配模块206,可以用于从预先设置的候选压缩策略中选取出与计算得到的数据离散度相匹配的数据压缩策略;

相应的,所述数据压缩模块205采用预设的数据压缩策略对所述候选分组内的路由数据进行压缩包括采用所述压缩算法匹配模块匹配出的数据压缩策略对所述候选分组内的路由数据进行压缩。

本实施例中可以预先设置的对应不同数据离散度的数据压缩策略(压缩算法或执行策略/步骤),这些数据压缩策略可以预先存储在设置存储单元中,如存储在构建的压缩算法栈中。然后根据计算得到的分组内数据的离散度从预先设置的至少两个候选压缩算法中选取对应的数据压缩策略,进而来压缩候选分组内的路由数据。

本申请进一步的可以根据压缩后的路由数据设计不同层级的路由表。基本上述所述的用户id生成方式以、将共性的共性属性维度提取到索引数据中及路由数据生成方法、数据压缩方法实现的路由数据压缩,本申请还可以进一步的对路由数据压缩后生成的路由表进行层次化分段设计,以建立可靠、高效的路由服务策略。本申请其他的实施例中可以根据采用的共性属性维度、业务类型、用户分布等等选取不同的分层路由构架,来实现基于本申请提供的用户id生成策略、路由数据等的层次化分段路由表设计。本申请提供一种生成路由数据的处理装置的另一种实施例中,所述装置还可以包括:

路由分层处理模块,根据所述路由数据建立至少两级路由服务的分层路由数据,所述分层路由数据至少包括:存储单个分组的路由数据的子层路由数据、存储所有路由数据的根层路由数据。

如前述方法实施例所述,所述装置的另一种实施方式中,当生成所述身份标识使用的预定类型为国家时,所述分层路由数据被设计成,包括:

以用户所属的国家分组的路由数据作为国家路由表;

属于相同大区的国家对应的国家路由表构建生成大区路由表,所述大区包括预先基于国家的地理位置划分的分组区域;

汇总各个大区路由表生成全球用户中心路由表。

本申请实施例提供的生成路由数据的处理装置,利用在同一个属性维度下,用户具有一定程度的路由数据相关性,进而提取出共性维度信息,在生成用户id时将该维度的属性数据提取到索引数据中。这样在生成用户id时即可实现减少用户的路由数据的存储开销,减少用户属性的标识信息,从而实现在不影响寻找到用户的情况下减少路由数据bit位,实现路由数据压缩,可以有效降低路由服务器的内存读写负载压力,提高系统整体读写性能。

本申请上述所述的方法具体的可以由计算机程序代码实现,并存储记录在计算机可读存储介质中。在计算机执行时可以实现上述方法的功能。进一步的,本申请还提供一种计算机可读存储介质1,其上存储有计算机指令,所述指令被执行时实现以下步骤:

接收用户的注册请求消息,所述注册请求消息中包括预定类型的用户属性字段;

根据所述用户属性字段确定所述用户的身份标识所属的分组;

按照所述分组所对应的预定编码区间生成所述用户的身份识别标识。

本申请提供的另一种实施例的计算机可读存储介质2中,其上存储有计算机指令,所述指令被执行时实现以下步骤:

获取用户的身份识别标识,所述身份识别标识包括计算机执行上述实施例所述的可读存储介质上1的指令生成;

基于所述用户识别标识和路由编码的属性信息进行路由编码,生成所述用户的路由数据,所述路由编码的属性信息被设置成,包括剔除生成所述身份识别标识时的所述预定类型的用户属性字段。

一种计算机可读存储介质,所述路由数据以匹配字节为最小存储单元进行存储,所述匹配字节被设置成读写所述路由数据的中央处理器一次数据处理的字节长度。

所述的一种计算机可读存储介质的另一种实施例中,所述指令被执行时还实现以下步骤:

选出所述路由数据分组中数据变更频率符合预设要求的候选分组,按照选取的数据离散度计算方法计算所述候选分组中的路由数据的数据离散度;

若所述数据离散度符合预先设置的压缩阈值要求,则采用预设的数据压缩策略对所述候选分组内的路由数据进行压缩,形成压缩后路由数据。

所述的一种计算机可读存储介质的另一种实施例中,所述指令被执行时还实现以下步骤:

在计算出所述数据离散度之后,从预先设置的候选压缩策略中选取出与计算得到的数据离散度相匹配的数据压缩策略;

相应的,所述采用预设的数据压缩策略对所述候选分组内的路由数据进行压缩,包括:采用所述相匹配的数据压缩策略对所述候选分组内的路由数据进行压缩。

上述实施例所述的计算机可读存储介质中存储的指令被执行时可以实现路由数据高效压缩,可以有效降低路由服务器的内存读写负载压力,提高系统整体读写性能。

本申请前述所述的方法、装置、计算机可读存储介质的实施例可以用于路由数据存储、处理的路由服务器中,实现路由数据低存储开销与高性能读写,可以有效降低服务器、服务器集群(或机房)的容量和数据灾备问题,提高服务器的内存读写负载压力,提高系统整体读写性能。具体的,本申请提供的一种路由服务器的一种实施例中,所述服务器可以包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现以下步骤:

接收用户的注册请求消息,所述注册请求消息中包括预定类型的用户属性字段;

根据所述用户属性字段确定所述用户的身份标识所属的分组;

按照所述分组所对应的预定编码区间生成所述用户的身份识别标识。

另一种路由服务器的实施方式中,所述服务器可以包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现以下步骤:

获取用户的身份识别标识,所述身份识别标识包括:采用根据请求消息中预定类型的用户属性字段确定出用户的身份标识所属的分组,并按照所述分组所对应的预定编码区间生成身份识别标识;

基于所述用户识别标识和路由编码的属性信息进行路由编码,生成所述用户的路由数据,所述路由编码的属性信息被设置成,包括剔除生成所述身份识别标识时的所述预定类型的用户属性字段。

当然,上述实施例提供的路由服务器参照前述方法或装置等的实施例还可以有其他的实施方式,如计算分组的离散度并选取数据压缩策略进行数据压缩、动态数据压缩、分层的路由表服务器设计(全球用户中心路由表以及各大区的路由表)等,具体的实施方式可以参照前述相关实施例的描述,在此不做赘述。

尽管本申请内容中提到用户属性的不同bit位组成方式、路由数据的编码、按照地理位置的用户分组、bitset经典算法压缩数据等之类的数据组成/生成、数据压缩算法等的描述,但是,本申请并不局限于必须是路由编码标准、业务路由设置/设计规范或标准、标准压缩算法或实施例所描述的情况。某些行业标准或者使用自定义方式或实施例描述的实施基础上略加修改后的实施方案也可以实现上述实施例相同、等同或相近、或变形后可预料的实施效果。应用这些修改或变形后的数据生成、存储、判断、处理方式等获取的实施例,仍然可以属于本申请的可选实施方案范围之内。

虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。

在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmablelogicdevice,pld)(例如现场可编程门阵列(fieldprogrammablegatearray,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logiccompiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardwaredescriptionlanguage,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advancedbooleanexpressionlanguage)、ahdl(alterahardwaredescriptionlanguage)、confluence、cupl(cornelluniversityprogramminglanguage)、hdcal、jhdl(javahardwaredescriptionlanguage)、lava、lola、myhdl、palasm、rhdl(rubyhardwaredescriptionlanguage)等,目前最普遍使用的是vhdl(very-high-speedintegratedcircuithardwaredescriptionlanguage)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。

控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmelat91sam、microchippic18f26k20以及siliconelabsc8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。

为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

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

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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