ID生成方法、装置及系统与流程

文档序号:17548197发布日期:2019-04-30 18:00阅读:138来源:国知局
ID生成方法、装置及系统与流程

本发明涉及数据处理技术领域,特别涉及一种id生成方法、装置及系统。



背景技术:

目前很多应用场景中需要使用全局唯一识别码(identifier,id)。全局唯一id指应用场景中的所有id均不重复,即任何两个id之间不会冲突。

在分布式系统中,目前通常采用通用唯一识别码(universallyuniqueidentifier,uuid)作为全局唯一id。uuid通常由当前日期和时间、时钟序列以及全局唯一的机器序列号(例如网卡的媒体访问控制(mediaaccesscontrol,mac)地址)组成,uuid通常以字符串的形式存储。

但是,由于uuid采用字符串的形式存储,其可读性较差,查询效率较低;另外,uuid无法保证趋势递增,其应用局限性较高。



技术实现要素:

本发明实施例提供了一种id生成方法、装置及系统,可以解决相关技术中提供id的应用局限性较高的问题。所述技术方案如下:

第一方面,提供了一种id生成方法,用于服务端,所述方法包括:

接收应用端发起的id获取指令;

获取目标进程标识和服务端标识,所述目标进程标识为所述服务端中执行所述id获取指令的目标进程的标识;

基于指定时间戳、所述目标进程标识、所述服务端标识和自增序列,生成目标id,所述指定时间戳与当前时间戳正相关,所述指定时间戳的比特位高于所述目标进程标识的比特位和所述服务端标识的比特位,所述自增序列的比特位低于所述目标进程标识的比特位和所述服务端标识的比特位;

向所述应用端发送所述目标id。

可选地,所述获取目标进程标识,包括:

获取所述目标进程对应的目标进程变量,所述服务端中不同进程所对应的进程变量不同;

基于进程标识配置文件,获取所述目标进程标识,所述进程标识配置文件用于存储进程变量与进程标识的映射关系。

可选地,所述基于进程标识配置文件,获取所述目标进程标识,包括:

检测所述进程标识配置文件中是否存储有所述目标进程变量与所述目标进程标识的映射关系;

当所述进程标识配置文件中存储有所述目标进程变量与所述目标进程标识的映射关系时,从所述进程标识配置文件中获取所述目标进程标识。

可选地,在所述检测所述进程标识配置文件中是否存储有所述目标进程变量与所述目标进程标识的映射关系之后,所述方法还包括:

当所述进程标识配置文件中未存储有所述目标进程变量与所述目标进程标识的映射关系时,遍历所述进程标识配置文件,以获取所述进程标识配置文件中数值最大的进程标识;

将所述数值最大的进程标识加1得到的数值确定为所述目标进程标识;

在所述进程标识配置文件中存储所述目标进程变量与所述目标进程标识的映射关系,得到更新后的进程标识配置文件。

可选地,所述获取服务端标识,包括:

检测所述服务端的系统配置文件中是否存在所述服务端标识,所述服务端标识的取值范围为0至n-1,n为所述服务端所在系统支持的服务端的最大数量,n为正整数;

当所述服务端的系统配置文件中存在所述服务端标识时,获取所述服务端标识。

可选地,在所述检测所述服务端的系统配置文件中是否存在所述服务端标识之后,所述方法还包括:

当所述服务端的系统配置文件中不存在所述服务端标识时,从所述服务端的运维配置文件中获取服务端id;

将所述服务端id对n取模,得到所述服务端标识。

可选地,所述目标id由高位至低位依次包括标记位、所述指定时间戳、所述目标进程标识、所述服务端标识和所述自增序列;

或者,所述目标id由高位至低位依次包括标记位、所述指定时间戳、所述服务端标识、所述目标进程标识和所述自增序列。

可选地,所述目标id的位宽为64位;

所述标记位的位宽为1位,所述指定时间戳的位宽范围为35-45位,所述目标进程标识的位宽范围为1-10位,所述服务端标识的位宽范围为5-10位,所述自增序列的位宽范围为6-20位。

第二方面,提供了一种id生成装置,用于服务端,所述装置包括:

接收模块,用于接收应用端发起的id获取指令;

获取模块,用于获取目标进程标识和服务端标识,所述目标进程标识为所述服务端中执行所述id获取指令的目标进程的标识;

生成模块,用于基于指定时间戳、所述目标进程标识、所述服务端标识和自增序列,生成目标id,所述指定时间戳与当前时间戳正相关,所述指定时间戳的比特位高于所述目标进程标识的比特位和所述服务端标识的比特位,所述自增序列的比特位低于所述目标进程标识的比特位和所述服务端标识的比特位;

发送模块,用于向所述应用端发送所述目标id。

可选地,所述获取模块,用于:

获取所述目标进程对应的目标进程变量,所述服务端中不同进程所对应的进程变量不同;

基于进程标识配置文件,获取所述目标进程标识,所述进程标识配置文件用于存储进程变量与进程标识的映射关系。

可选地,所述获取模块,还用于:

检测所述进程标识配置文件中是否存储有所述目标进程变量与所述目标进程标识的映射关系;

当所述进程标识配置文件中存储有所述目标进程变量与所述目标进程标识的映射关系时,从所述进程标识配置文件中获取所述目标进程标识。

可选地,所述获取模块,还用于:

当所述进程标识配置文件中未存储有所述目标进程变量与所述目标进程标识的映射关系时,遍历所述进程标识配置文件,以获取所述进程标识配置文件中数值最大的进程标识;

将所述数值最大的进程标识加1得到的数值确定为所述目标进程标识;

在所述进程标识配置文件中存储所述目标进程变量与所述目标进程标识的映射关系,得到更新后的进程标识配置文件。

可选地,所述获取模块,用于:

检测所述服务端的系统配置文件中是否存在所述服务端标识,所述服务端标识的取值范围为0至n-1,n为所述服务端所在系统支持的服务端的最大数量,n为正整数;

当所述服务端的系统配置文件中存在所述服务端标识时,获取所述服务端标识。

可选地,所述获取模块,还用于:

当所述服务端的系统配置文件中不存在所述服务端标识时,从所述服务端的运维配置文件中获取服务端id;

将所述服务端id对n取模,得到所述服务端标识。

可选地,所述目标id由高位至低位依次包括标记位、所述指定时间戳、所述目标进程标识、所述服务端标识和所述自增序列;

或者,所述目标id由高位至低位依次包括标记位、所述指定时间戳、所述服务端标识、所述目标进程标识和所述自增序列。

可选地,所述目标id的位宽为64位;

所述标记位的位宽为1位,所述指定时间戳的位宽范围为35-45位,所述目标进程标识的位宽范围为1-10位,所述服务端标识的位宽范围为5-10位,所述自增序列的位宽范围为6-20位。

第三方面,提供了一种id生成系统,所述系统包括:至少一个服务端和至少一个应用端,所述服务端包括如第二方面任一所述的id生成装置。

第四方面,提供了一种id生成装置,包括:存储器和处理器;

所述存储器,用于存储计算机程序;

所述处理器,用于执行所述存储器上所存储的计算机程序,实现如第一方面任一所述的id生成方法。

第五方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有代码指令,所述代码指令由处理器执行,实现如第一方面任一所述的id生成方法。

本发明实施例提供的技术方案带来的有益效果包括:

通过服务端基于指定时间戳、目标进程标识、服务端标识和自增序列生成目标id。由于不同服务端的服务端标识不同,且同一服务端中不同进程的进程标识不同,因此可以保证服务端中的目标进程在某一时刻生成的目标id是全局唯一的。一方面,目标id可以采用十进制的形式存储,其可读性高,基于该目标id的查询效率高;另一方面,由于指定时间戳与当前时间戳正相关,且指定时间戳的比特位高于目标进程标识的比特位和服务端标识的比特位,自增序列的比特位低于目标进程标识的比特位和服务端标识的比特位,可以保证生成的id趋势递增。因此与相关技术相比,降低了目标id的应用局限性,扩大了目标id的应用范围。

附图说明

图1是本发明实施例提供的一种id生成系统的结构示意图;

图2是本发明实施例提供的一种id生成方法的流程图;

图3是本发明实施例提供的另一种id生成方法的流程图;

图4是本发明实施例提供的一种获取目标进程标识的方法流程图;

图5是本发明实施例提供的一种id生成装置的结构示意图;

图6是本发明实施例提供的一种服务端的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

图1是本发明实施例提供的一种id生成系统的结构示意图,如图1所示,该id生成系统10包括至少一个服务端101和至少一个应用端102。示例的,参见图1,id生成系统10包括两个服务端101和三个应用端102。每个服务端101可以与至少一个应用端102通过有线网络或无线网络建立通信连接。

可选地,服务端101也可称为机器节点。服务端101可以是服务器,例如服务端可以是某个游戏平台的后台服务器;或者服务端101可以是一个云计算服务中心。应用端102可以是智能手机、平板电脑和可穿戴设备等终端。本发明实施例对此不做限定。服务端101用于向连接的应用端102提供全局唯一id。

在本发明实施例中,通过对雪花(snowflake)算法进行封装,使服务端101基于封装后的雪花算法生成全局唯一id,该id包括标记位、指定时间戳、进程标识、服务端标识和自增序列,指定时间戳与当前时间戳正相关。其中,标记位的比特位为id中的最高位,指定时间戳的比特位高于目标进程标识的比特位和服务端标识的比特位,自增序列的比特位低于目标进程标识的比特位和服务端标识的比特位,也即是,服务端生成的id由高位至低位依次包括标记位、指定时间戳、目标进程标识、服务端标识和自增序列;或者,服务端生成的id由高位至低位依次包括标记位、指定时间戳、服务端标识、目标进程标识和自增序列。

可选地,标记位也可称为符号位,当标记位为1,表示id为正数;当标记位为0,表示id为负数。

需要说明的是,在id生成系统中,不同服务端的服务端标识不同,也即是对于整个id生成系统而言,服务端标识是全局唯一的;在每个服务端中,不同进程的进程标识不同,也即是对于单个服务端而言,进程标识是全局唯一的。其中,目标进程标识和服务端标识均为数字。另外,由于指定时间戳和自增序列均为数字,因此本发明实施例提供的id生成系统生成的id可以采用十进制的形式存储。

可选地,本发明实施例提供的id生成系统可以是集中式系统,也可以是分布式系统,对此不做限定。

图2是本发明实施例提供的一种id生成方法的流程图,用于如图1所示的id生成系统10中的任一服务端101,如图2所示,该方法包括:

步骤201、接收应用端发起的id获取指令。

步骤202、获取目标进程标识和服务端标识。

其中,目标进程标识为服务端中执行id获取指令的目标进程的标识。

步骤203、基于指定时间戳、目标进程标识、服务端标识和自增序列,生成目标id。

其中,指定时间戳与当前时间戳正相关。指定时间戳的比特位高于目标进程标识的比特位和服务端标识的比特位,自增序列的比特位低于目标进程标识的比特位和服务端标识的比特位。

可选地,目标id由目标进程生成。

步骤204、向应用端发送目标id。

综上所述,本发明实施例提供的id生成方法,服务端基于指定时间戳、目标进程标识、服务端标识和自增序列生成目标id。由于不同服务端的服务端标识不同,且同一服务端中不同进程的进程标识不同,因此可以保证服务端中的目标进程在某一时刻生成的目标id是全局唯一的。一方面,目标id可以采用十进制的形式存储,其可读性高,基于该目标id的查询效率高;另一方面,由于指定时间戳与当前时间戳正相关,且指定时间戳的比特位高于目标进程标识的比特位和服务端标识的比特位,自增序列的比特位低于目标进程标识的比特位和服务端标识的比特位,可以保证生成的id趋势递增。因此与相关技术相比,降低了目标id的应用局限性,扩大了目标id的应用范围。

图3是本发明实施例提供的另一种id生成方法的流程图,用于如图1所示的id生成系统10中,如图3所示,该方法包括:

步骤301、应用端向服务端发送id获取指令。

可选地,应用端发送的id获取指令用于指示服务端生成相应的id。

示例的,应用端为安装有游戏客户端的终端,服务端为游戏客户端对应的游戏后台服务器。例如,当用户在游戏客户端上创建虚拟房间时,游戏客户端可以生成id获取指令并向游戏后台服务器发送该id获取指令,该id获取指令用于指示游戏后台服务器生成该虚拟房间对应的id(即房间号);又例如,当用户在游戏客户端上申请登录账号时,游戏客户端可以生成id获取指令并向游戏后台服务器发送该id获取指令,该id获取指令用于指示游戏后台服务器生成该登录账号对应的id。

可选地,id获取指令还可以用于指示服务端生成流水号,该流水号用于服务端向对应的应用端发放奖励(例如虚拟货币、积分、现金和福卡)等,本发明实施例对id生成方法的应用场景不做限定。

步骤302、服务端获取目标进程标识。

其中,目标进程标识为服务端中执行id获取指令的目标进程的标识。

可选地,步骤302的实现过程包括:

s21、获取目标进程对应的目标进程变量,服务端中不同进程所对应的进程变量不同。

需要说明的是,服务端中每个进程的进程变量为进程私有,因此不同进程对应的进程变量不同,该进程变量可唯一标识进程。

s22、基于进程标识配置文件,获取目标进程标识,该进程标识配置文件用于存储进程变量与进程标识的映射关系。

可选地,如图4所示,上述s22的实现过程包括:

步骤221、检测进程标识配置文件中是否存储有目标进程变量与目标进程标识的映射关系;当进程标识配置文件中存储有目标进程变量与目标进程标识的映射关系时,执行步骤222;当进程标识配置文件中未存储有目标进程变量与所述目标进程标识的映射关系时,执行步骤223。

可选地,进程标识配置文件中可以存储有服务端中所有进程对应的进程变量。

步骤222、从进程标识配置文件中获取目标进程标识。

步骤223、遍历进程标识配置文件,以获取进程标识配置文件中数值最大的进程标识。

步骤224、将数值最大的进程标识加1得到的数值确定为目标进程标识。

示例的,当进程标识的位宽为3bit时,该进程标识的取值范围为0至7,若进程标识配置文件中数值最大的进程标识为4,则确定目标进程标识为5。

可选地,参考步骤223和步骤224,服务端可以在进程标识配置文件中增序存储各个进程对应的进程标识;或者,服务端也可以在进程标识配置文件中降序存储各个进程对应的进程标识,则步骤223和步骤224可以替换为:遍历进程标识配置文件,以获取进程标识配置文件中数值最小的进程标识;将数值最大的进程标识减1得到的数值确定为目标进程标识。服务端还可以采用其他方式在进程标识配置文件中存储各个进程对应的进程标识,仅需保证每个进程对应的进程标识唯一且处于取值范围内即可,本发明实施例对此不做限定。

步骤225、在进程标识配置文件中存储目标进程变量与目标进程标识的映射关系,得到更新后的进程标识配置文件。

可选地,当服务端再次接收到id获取指令时,可以基于更新后的进程标识配置文件获取执行该id获取指令的进程对应的进程标识,该过程可参考上述步骤221至步骤225,本发明实施例对在此不做赘述。

在本发明实施例中,服务端结合自身的应用体系,实现无浸入式地获取进程标识,可以应用于多种分布式系统,其通用性高。

步骤303、服务端获取服务端标识。

可选地,步骤303的实现过程包括:

s31、检测服务端的系统配置文件中是否存在服务端标识,服务端标识的取值范围为0至n-1,n为服务端所在系统支持的服务端的最大数量,n为正整数。

需要说明的是,系统配置文件中的服务端标识为数字。当服务端标识的位宽为pbit时,该服务端所在系统支持的服务端的最大数量n为2p时,则系统配置文件中存储的服务端标识的取值范围为0至2p-1。

s32、当服务端的系统配置文件中存在服务端标识时,获取服务端标识。

s33、当服务端的系统配置文件中不存在服务端标识时,从服务端的运维配置文件中获取服务端id。

其中,服务端id也可称为机器id。不同服务端的服务端id不同,即服务端id可唯一标识服务端。

s34、将服务端id对n取模,得到服务端标识。

由于服务端id的数值可能大于或等于n,因此将服务端id对n取模,使取模后的值处于服务端标识的取值范围内。

在本发明实施例中,服务端结合自身的应用体系,实现无浸入式地获取服务端标识,可以应用于多种分布式系统,其通用性高。

步骤304、服务端基于指定时间戳、目标进程标识、服务端标识和自增序列,生成目标id。

其中,指定时间戳与当前时间戳正相关。指定时间戳可以等于当前时间戳和历史时间戳的差值。可选地,历史时间戳可以是服务端开始运行时的时间戳,也可以是在当前时刻之前的某个固定时间戳,本发明实施例对此不做限定。

需要说明的是,指定时间戳的比特位高于目标进程标识的比特位和服务端标识的比特位,自增序列的比特位低于目标进程标识的比特位和服务端标识的比特位。另外,目标id还包括标记位,标记位为目标id中的最高位。可选地,目标id由高位至低位依次包括标记位、指定时间戳、目标进程标识、服务端标识和自增序列;或者,目标id由高位至低位依次包括标记位、指定时间戳、服务端标识、目标进程标识和自增序列。

可选地,指定时间戳和自增序列均为毫秒级。

可选地,目标id的位宽为64bit,标记位的位宽为1bit,指定时间戳的位宽、目标进程标识的位宽、服务端标识的位宽以及自增序列的位宽之和为63bit。可选地,指定时间戳的位宽范围为35-45位,目标进程标识的位宽范围为1-10位,服务端标识的位宽范围为5-10位,自增序列的位宽范围为6-20位。该目标id为long型。在实际应用场景中,指定时间戳的位宽、目标进程标识的位宽、服务端标识的位宽和自增序列的位宽可根据实际需求进行设定和调整,本发明实施例对此不做限定。

在本发明实施例中,当指定时间戳为毫秒级,位宽为mbit的指定时间戳可供使用的年数t=(1l<<m)/(1000l*60*60*24*365),其中,“<<”表示按位左移;目标进程标识的位宽为nbit,则该服务端支持同时运行至多2n个进程;服务端标识的位宽为pbit,则该服务端所在的id生成系统最多可支持2p个服务端;当自增序列为毫秒级,自增序列的位宽为qbit,则每个进程支持每毫秒至多生成2q个id。其中,m,n,p和q均为正整数。

可选地,服务端生成目标id的软件实现过程包括:存储位宽为qbit的自增序列;左移q位存储位宽为pbit的服务端标识;左移(p+q)位存储位宽为nbit的目标进程标识,左移(p+q+n)位存储位宽为mbit的指定时间戳。其中,目标id可由目标进程生成。

需要说明的是,本发明实施例生成的目标id的位宽为64bit,而uuid的位宽为128bit,因此与相关技术提供的uuid相比,本发明实施例提供的目标id所占用的存储空间较小,可以节约存储资源。

步骤305、服务端向应用端发送目标id。

可选地,应用端发送的id获取指令中携带有该应用端的标识信息,服务端基于该应用端的标识信息向该应用端发送生成的目标id,以供应用端使用。

需要说明的是,本发明实施例提供的id生成方法的步骤先后顺序可以进行适当调整,例如步骤303可以在步骤302之前执行,或者步骤302可以和步骤303同时执行,步骤也可以根据情况进行相应增减,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本发明的保护范围之内,因此不再赘述。

综上所述,本发明实施例提供的id生成方法,服务端基于指定时间戳、目标进程标识、服务端标识和自增序列生成目标id。由于不同服务端的服务端标识不同,且同一服务端中不同进程的进程标识不同,因此可以保证服务端中的目标进程在某一时刻生成的目标id是全局唯一的。一方面,目标id可以采用十进制的形式存储,其可读性高,基于该目标id的查询效率高;另一方面,由于指定时间戳与当前时间戳正相关,且指定时间戳的比特位高于目标进程标识的比特位和服务端标识的比特位,自增序列的比特位低于目标进程标识的比特位和服务端标识的比特位,可以保证生成的id趋势递增。另外,本发明实施例提供的id生成方法,可以应用于不同的数据库,因此与相关技术相比,降低了目标id的应用局限性,扩大了目标id的应用范围。

图5是本发明实施例提供的一种id生成装置的结构示意图,用于如图1所示的id生成系统10中的任一服务端101,如图5所示,该装置40包括:

接收模块401,用于接收应用端发起的id获取指令。

获取模块402,用于获取目标进程标识和服务端标识,目标进程标识为服务端中执行id获取指令的目标进程的标识。

生成模块403,用于基于指定时间戳、目标进程标识、服务端标识和自增序列,生成目标id,指定时间戳与当前时间戳正相关,指定时间戳的比特位高于目标进程标识的比特位和服务端标识的比特位,自增序列的比特位低于目标进程标识的比特位和服务端标识的比特位。

发送模块404,用于向应用端发送目标id。

综上所述,本发明实施例提供的id生成装置,服务端通过生成模块基于指定时间戳、目标进程标识、服务端标识和自增序列生成目标id。由于不同服务端的服务端标识不同,且同一服务端中不同进程的进程标识不同,因此可以保证服务端中的目标进程在某一时刻生成的目标id是全局唯一的。一方面,目标id可以采用十进制的形式存储,其可读性高,基于该目标id的查询效率高;另一方面,由于指定时间戳与当前时间戳正相关,且指定时间戳的比特位高于目标进程标识的比特位和服务端标识的比特位,自增序列的比特位低于目标进程标识的比特位和服务端标识的比特位,可以保证生成的id趋势递增。另外,本发明实施例提供的id生成方法,可以应用于不同的数据库,因此与相关技术相比,降低了目标id的应用局限性,扩大了目标id的应用范围。

可选地,获取模块,用于:

获取目标进程对应的目标进程变量,服务端中不同进程所对应的进程变量不同;基于进程标识配置文件,获取目标进程标识,进程标识配置文件用于存储进程变量与进程标识的映射关系。

可选地,获取模块,还用于:

检测进程标识配置文件中是否存储有目标进程变量与目标进程标识的映射关系;当进程标识配置文件中存储有目标进程变量与目标进程标识的映射关系时,从进程标识配置文件中获取目标进程标识。

可选地,获取模块,还用于:

当进程标识配置文件中未存储有目标进程变量与目标进程标识的映射关系时,遍历进程标识配置文件,以获取进程标识配置文件中数值最大的进程标识;将数值最大的进程标识加1得到的数值确定为目标进程标识;在进程标识配置文件中存储目标进程变量与目标进程标识的映射关系,得到更新后的进程标识配置文件。

可选地,获取模块,用于:

检测服务端的系统配置文件中是否存在服务端标识,服务端标识的取值范围为0至n-1,n为服务端所在系统支持的服务端的最大数量,n为正整数;当服务端的系统配置文件中存在服务端标识时,获取服务端标识。

可选地,获取模块,还用于:

当服务端的系统配置文件中不存在服务端标识时,从服务端的运维配置文件中获取服务端id;将服务端id对n取模,得到服务端标识。

可选地,目标id由高位至低位依次包括标记位、指定时间戳、目标进程标识、服务端标识和自增序列;或者,目标id由高位至低位依次包括标记位、指定时间戳、服务端标识、目标进程标识和自增序列。

可选地目标id的位宽为64位;标记位的位宽为1位,指定时间戳的位宽范围为35-45位,目标进程标识的位宽范围为1-10位,服务端标识的位宽范围为5-10位,自增序列的位宽范围为6-20位。

综上所述,本发明实施例提供的id生成装置,服务端通过生成模块基于指定时间戳、目标进程标识、服务端标识和自增序列生成目标id。由于不同服务端的服务端标识不同,且同一服务端中不同进程的进程标识不同,因此可以保证服务端中的目标进程在某一时刻生成的目标id是全局唯一的。一方面,目标id可以采用十进制的形式存储,其可读性高,基于该目标id的查询效率高;另一方面,由于指定时间戳与当前时间戳正相关,且指定时间戳的比特位高于目标进程标识的比特位和服务端标识的比特位,自增序列的比特位低于目标进程标识的比特位和服务端标识的比特位,可以保证生成的id趋势递增。另外,本发明实施例提供的id生成方法,可以应用于不同的数据库,因此与相关技术相比,降低了目标id的应用局限性,扩大了目标id的应用范围。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本发明实施例提供了一种id生成系统,如图1所示,该系统包括:至少一个服务端101和至少一个应用端102,所述服务端包括如图5所示的id生成装置。

本发明实施例提供了一种id生成装置,包括:存储器和处理器;

所述存储器,用于存储计算机程序;

所述处理器,用于执行所述存储器上所存储的计算机程序,实现如图2或图3所示的id生成方法。

图6是本发明实施例提供的一种服务端的结构示意图,该服务端可以是服务器。所述服务器500包括中央处理单元(centralprocessingunit,cpu)501、包括随机存取存储器(randomaccessmemory,ram)502和只读存储器(readonlymemory,rom)503的系统存储器504,以及连接系统存储器504和中央处理单元501的系统总线505。所述服务器500还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(i/o系统)506,和用于存储操作系统513、应用程序514和其他程序模块515的大容量存储设备507。

所述基本输入/输出系统506包括有用于显示信息的显示器508和用于用户输入信息的诸如鼠标、键盘之类的输入设备509。其中所述显示器508和输入设备509都通过连接到系统总线505的输入输出控制器510连接到中央处理单元501。所述基本输入/输出系统506还可以包括输入输出控制器510以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器510还提供输出到显示屏、打印机或其他类型的输出设备。

所述大容量存储设备507通过连接到系统总线505的大容量存储控制器(未示出)连接到中央处理单元501。所述大容量存储设备507及其相关联的计算机可读介质为服务器500提供非易失性存储。也就是说,所述大容量存储设备507可以包括诸如硬盘或者cd-rom驱动器之类的计算机可读介质(未示出)。

不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括ram、rom、eprom、eeprom、闪存或其他固态存储其技术,cd-rom、dvd或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器504和大容量存储设备507可以统称为存储器。

根据本发明的各种实施例,所述服务器500还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器500可以通过连接在所述系统总线505上的网络接口单元511连接到网络512,或者说,也可以使用网络接口单元511来连接到其他类型的网络或远程计算机系统(未示出)。

所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,中央处理单元501通过执行该一个或一个以上程序来实现图2或图3所示的id生成方法。

本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有代码指令,所述代码指令由处理器执行,实现如图2或图3所示的id生成方法。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的可选实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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