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

一种标识码生成方法、装置、服务器和存储介质

文献发布时间:2023-06-19 12:13:22


一种标识码生成方法、装置、服务器和存储介质

技术领域

本公开涉及通信技术领域,尤其涉及一种标识码生成方法、装置、服务器和存储介质。

背景技术

在服务端开发中,通常会使用标识码(Identity documen,ID)来判断两个数据生成的先后顺序。例如视频评论列表中,在同一时间可能会存在多个评论消息,导致无法根据时间确定该多个评论信息的先后顺序。但是,由于每个评论信息对应一个ID,因此可以利用ID对视频评论列表中的评论信息进行排序确定评论信息的先后顺序,避免根据时间无法确定评论信息的先后顺序的问题。

由上述可知,如何保证ID是严格递增显得尤为重要。为此,现有技术中提供了一种主备方案(只有主用机器对外提供服务,备用机器在主用机器故障后进行切换继续服务)通过一个机器对外提供服务能够保证ID是严格递增的。但是主备方案的问题是:只有一个机器工作,另一个机器完全空闲,两个机器的负载不均衡,资源使用率较低。

发明内容

本公开提供一种标识码生成方法、装置、服务器和存储介质,以至少解决相关技术中在保证ID严格递增的同时,提高负载的利用率的问题。

本公开的技术方案如下:

根据本公开实施例的第一方面,提供一种标识码生成方法,包括:获取每个标识码生成器已处理的标识码生成请求的总数量;其中,每个标识码生成请求对应一个标识码业务类型;确定总数量中存在大于或等于请求量阈值的总数量时,重新生成标识码业务类型与标识码生成器的对应关系;其中,重新生成的对应关系中不同标识码生成器对应的标识码业务类型不同;向客户端发送对应关系,以便客户端在发起待发送标识码生成请求时,根据对应关系以及标识码生成请求对应的标识码业务类型,确定接收待发送标识码生成请求的标识码生成器。

在一种可实施的方式中,本公开实施例提供的标识码生成方法还包括:

根据总数量,确定请求量阈值。

在一种可实施的方式中,本公开实施例提供的标识码生成方法中请求量阈值满足下述公式:

其中,A表示请求量阈值,M表示标识码生成器的总数量,N

在一种可实施的方式中,上述“重新生成标识码业务类型与标识码生成器的对应关系”,具体可通过下述方式实现:根据总数量,重新生成标识码业务类型与标识码生成器的对应关系。

在一种可实施的方式中,上述“根据总数量,重新生成标识码业务类型与标识码生成器的对应关系”,具体可通过下述方式实现:根据总数量,对所有标识码生成器进行负载均衡,重新生成标识码业务类型与标识码生成器的对应关系。

在一种可实施的方式中,本公开实施例提供的标识码生成方法还包括:在目标客户端存在新增的标识码业务类型的情况下,根据总数量确定新增的标识码业务类型对应的目标标识码生成器;向目标客户端发送指示信息,指示信息用于指示目标客户端向目标标识码生成器发送新增的标识码业务类型对应的标识码生成请求。

在一种可实施的方式中,上述“根据总数量确定新增的标识码业务类型对应的目标标识码生成器”,具体可通过下述方式实现:根据总数量,确定新增的标识码业务类型对应的目标标识码生成器为总数量中最小总数量对应的标识码生成器。

在一种可实施的方式中,在任一个总数量大于或等于请求量阈值的情况下,重新生成标识码业务类型与标识码生成器的对应关系后,本公开实施例提供的标识码生成方法还包括:向标识码生成器发送重置信息,重置信息用于指示每个标识码生成器清除已有的标识码业务类型对应的历史标识码号段,并重新获取标识码业务类型对应的当前标识码号段;其中,历史标识码号段中的最大标识码小于当前标识码号段中的最小标识码。

在一种可实施的方式中,在任一个总数量大于或等于请求量阈值的情况下,重新生成标识码业务类型与标识码生成器的对应关系后,本公开实施例提供的标识码生成方法还包括:获取每个标识码生成器已处理的标识码业务类型生成的最大标识码;向标识码生成器发送携带与其对应的标识码业务类型的最大标识码的目标信息,目标信息用于指示标识码生成器重新生成于其对应的标识码业务类型的最小标识码大于最大标识码。

根据本公开实施例的第二方面,提供一种标识码生成装置,包括:收发单元和处理单元。收发单元,被配置为获取每个标识码生成器已处理的标识码生成请求的总数量;其中,每个标识码生成请求对应一个标识码业务类型;处理单元,被配置为确定收发单元获取的总数量中存在大于或等于请求量阈值的总数量时,重新生成标识码业务类型与标识码生成器的对应关系;其中,重新生成的对应关系中不同标识码生成器对应的标识码业务类型不同;处理单元,还被配置为控制收发单元向客户端发送对应关系,以便客户端在发起待发送标识码生成请求时,根据对应关系以及标识码生成请求对应的标识码业务类型,确定接收待发送标识码生成请求的标识码生成器。

在一种可实施的方式中,处理单元,还用于根据收发单元获取的总数量,确定请求量阈值。

在一种可实施的方式中,请求量阈值满足下述公式:

其中,A表示请求量阈值,M表示标识码生成器的总数量,N

在一种可实施的方式中,处理单元,具体被配置为根据收发单元获取的总数量,重新生成标识码业务类型与标识码生成器的对应关系。

在一种可实施的方式中,处理单元,具体被配置为根据收发单元获取的总数量,对所有标识码生成器进行负载均衡,重新生成标识码业务类型与标识码生成器的对应关系。

在一种可实施的方式中,处理单元,还被配置为在目标客户端存在新增的标识码业务类型的情况下,根据收发单元获取的总数量确定新增的标识码业务类型对应的目标标识码生成器;处理单元,还被配置为控制收发单元向目标客户端发送指示信息,指示信息用于指示目标客户端向目标标识码生成器发送新增的标识码业务类型对应的标识码生成请求。

在一种可实施的方式中,处理单元,具体被配置为根据收发单元获取的总数量,确定新增的标识码业务类型对应的目标标识码生成器为总数量中最小总数量对应的标识码生成器。

在一种可实施的方式中,处理单元,还被配置为控制收发单元向标识码生成器发送重置信息,重置信息用于指示每个标识码生成器清除已有的标识码业务类型对应的历史标识码号段,并重新获取标识码业务类型对应的当前标识码号段;其中,历史标识码号段中的最大标识码小于当前标识码号段中的最小标识码。

在一种可实施的方式中,获取每个标识码生成器已处理的标识码业务类型生成的最大标识码;处理单元,还被配置为控制收发单元向标识码生成器发送携带与其对应的标识码业务类型的最大标识码的目标信息,目标信息用于指示标识码生成器重新生成于其对应的标识码业务类型的最小标识码大于最大标识码。

根据本公开实施例的第三方面,提供一种服务器,包括:

处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现第一方面提供的标识码生成方法。

根据本公开实施例的第四方面,提供一种计算机可读存储介质,当存储介质中的指令由第三方面提供的服务器的处理器执行时,使得服务器能够执行第一方面提供的标识码生成方法。

根据本公开实施例的第五方面,提供一种计算机程序产品,包括,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面的设计方式的标识码生成方法。

本公开的实施例提供的技术方案至少带来以下有益效果:

由上述可知,本公开实施例提供的标识码生成方法,通过获取每个标识码生成器已处理的标识码生成请求的总数量,从而可以根据每个标识码生成器已处理的标识码生成请求的总数量和请求量阈值确定每个标识码生成器当前的负载使用率。当确定任一个标识码生成器已处理的标识码生成请求的总数量大于或等于请求量阈值时,此时说明该标识码生成器处理的标识码业务类型较高,在重新生成标识码业务和标识码生成器的对应关系后,可以保证每个标识码生成器的负载使用率。同时,由于每个标识码生成器对应的标识码业务类型不同,即同一时刻,标识码业务类型仅有一个标识码生成器在处理从而在保证标识码业务类型生成的标识码是严格递增的。当客户端在接收到重新生成的对应关系后,在发起待发送标识码生成请求时,根据对应关系以及标识码生成请求对应的标识码业务类型,确定接收待发送标识码生成请求的标识码生成器。解决了相关技术中在保证ID严格递增的同时,提高负载的利用率的问题。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。

图1是根据一示例性实施例示出的一种实施环境的架构图。

图2是根据一示例性实施例示出的一种标识码生成方法的流程图之一。

图3是根据一示例性实施例示出的一种标识码生成方法的流程图之二。

图4是根据一示例性实施例示出的一种标识码生成方法的流程图之三。

图5是根据一示例性实施例示出的一种标识码生成方法的流程图之四。

图6是根据一示例性实施例示出的一种标识码生成方法的流程图之五。

图7是根据一示例性实施例示出的一种标识码生成方法的流程图之六。

图8是根据一示例性实施例示出的一种标识码生成方法的流程图之七。

图9是根据一示例性实施例示出的一种标识码生成装置的结构示意图之一。

图10是根据一示例性实施例示出的一种标识码生成装置的结构示意图之二。

具体实施方式

为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。

需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

图1是根据一示例性实施例示出的一种实施环境的架构图,如图1所示,下述标识码生成方法可以应用于该实施环境中。该实施环境包括服务器01、客户端02、标识码生成器03和数据库04。

其中,服务器01用于获取每个标识码生成器03已处理的标识码生成请求的总数量,在该总数量中存在大于或等于请求量阈值的总数量时,重新生成标识码业务和标识码生成器的对应关系,并向客户端02发送该对应关系。客户端02在接收到服务器01发送的对应关系后,在发起不同标识码业务的标识码生成请求时,据对应关系以及标识码生成请求对应的标识码业务类型,确定接收待发送标识码生成请求的标识码生成器03,并将每个标识码生成请求发送至对应的标识码生成器03。标识码生成器03在接收到标识码生成请求后,生成对应的标识码,并将该标识码发送至该客户端02。客户端02在接收到该标识码后,进行相应的业务。数据库04用于在标识码生成器03使用完目标标识码业务的号段资源时,重新为该标识码生成器03分配新的标识码号段资源。

需要说明的是,当标识码生成器03在预设时长内没有接收到目标标识码业务的标识码生成请求时,标识码生成器03需要清除该目标标识码业务在的标识码号段(标识码生成器03每次接收到目标标识码业务的标识码生成请求时,在该标识码号段中依次分配标识码,从而保证标识码生成器03生成的标识码是严格递增的),避免重新生成新的对应关系时,该标识码生成器03再次处理该目标标识码业务的业务请求时,生成较小的ID,导致出现ID不是严格递增的情况。此时,标识码生成器03可以通知数据库04当前目标业务已使用的ID,从而数据库04在下次为目标标识码业务分配ID时,可以接着该目标业务已使用的ID(如,当前已使用的ID的最大值为90,则可以从91开始分配新的ID号段)分配新的ID号段,实现节省ID号段的目标。当然,也可以按照依次分配(如:当前为目标标识码业务分配的ID号段为1-100,则下次为目标标识码业务分配的ID号段为101-200,以此类推)。

另外,由于每次重新生成的对应关系时,对应标识码生成器03处理的标识码业务也可能会发生改变,因此每次重新生成对应关系后,服务器01需要指示该标识码生成器03重新获取其在本次对应关系中对应的每个标识码业务的标识码号段(该标识码号段的最小值与该标识码业务生成的最大标识码连续),从而保证该标识码业务可以分配到对应的标识码。当该标识码生成器03接收到目标标识码业务的标识码生成请求(其中,该目标标识码业务在上一个对应关系中对应的为该标识码生成器03)时,若该标识码生成器03中的对应该目标标识码业务的ID号段并未使用完,则可以继续使用该ID号段分配ID。

在一种可实施的方式中,服务器01可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。服务器01可以包括处理器、存储器以及网络接口等。

在一种可实施的方式中,客户端02可以但不限于是各种业务平台,该业务平台包含但不限于视频服务平台,通信服务平台等等。

在一种可实施的方式中,客户端02用于向用户提供语音和/或数据连通性服务。客户端02可以有不同的名称,例如用户设备(user equipment,UE)、接入终端、终端单元、终端站、移动站、移动台、远方站、远程终端、移动设备、无线通信设备、车辆用户设备、终端代理或终端装置等。可选的,客户端02可以为各种具有通信功能的手持设备、车载设备、可穿戴设备、计算机,本公开实施例对此不作任何限定。例如,手持设备可以是智能手机。车载设备可以是车载导航系统。可穿戴设备可以是智能手环。计算机可以是个人数字助理(personaldigital assistant,PDA)电脑、平板型电脑以及膝上型电脑(laptop computer)。

在本公开中所用的一些术语具有其在业界普通和习惯的意义。另外,对一些术语在本说明书中出现时会加以解释。但理解在本文中特别使用的几个术语会有所帮助。

ID是服务端开发中常用的唯一标识某个具体实体的概念。例如:用户ID。

标识码生成器是指能产生不重复ID服务的程序,在后台开发过程中,尤其是分布式服务、微服务程序开发过程中,经常会被用到。例如,标识码生成器能够为用户的每个请求产生一个唯一ID、为每个消息产生一个ID,并且对于同一个标识码业务类型,当前次生成的标识码大于上一次生成的标识码等等。

严格递增指生成的ID大小随着调用顺序是一次增大的。如:第一次调用生成1,第二次调用生成2,第三次调用生成3,每一次调用生成的ID都比之前的大,这种情况下生成的ID为严格递增(注意不一定要求生成的ID连续,例如1,2,4,6,8虽然不连续,但是是严格递增的)。相反如果ID的生成顺序是1,3,2,5,4,由于第三次调用生成的2小于第三次调用生成的3,因此这个ID的生成顺序不是严格递增的。

负载均衡:指各个机器的负载(中央处理器(central processing unit,CPU)压力、请求量等指标)相差不多,不会出现少量机器请求量非常多其他机器又很少的情况。

远程过程调用(Remote Procedure Call,RPC)指一个服务调用另一个服务的接口来获取数据。

现有技术中,采用主备方案生成ID时,只有一个机器工作,另一个机器完全空闲,两个机器的负载不均衡,资源使用率较低。

为解决上述问题,本公开实施例提供的标识码生成方法,通过获取每个标识码生成器已处理的标识码生成请求的总数量,从而可以根据每个标识码生成器已处理的标识码生成请求的总数量和请求量阈值确定每个标识码生成器当前的负载使用率。当确定任一个标识码生成器已处理的标识码生成请求的总数量大于或等于请求量阈值时,此时说明该标识码生成器处理的标识码业务类型较高,在重新生成标识码业务和标识码生成器的对应关系后,可以保证每个标识码生成器的负载使用率。同时,由于每个标识码生成器对应的标识码业务类型不同,即同一时刻,标识码业务类型仅有一个标识码生成器在处理从而在保证标识码业务类型生成的标识码是严格递增的。当客户端在接收到重新生成的对应关系后,在发起待发送标识码生成请求时,根据对应关系以及标识码生成请求对应的标识码业务类型,确定接收待发送标识码生成请求的标识码生成器。解决了相关技术中在保证ID严格递增的同时,提高负载的利用率的问题,具体的实现过程如下:

本公开的实施例提供的标识码生成方法的执行主体可以为上述的服务器,也可以为服务器中能够实现该标识码生成方法的功能模块和/或功能实体,具体的可以根据实际使用需求确定,本公开的实施例不作限定。下面以执行主体为服务器为例,对本公开的实施例提供的标识码生成方法进行示例性的说明。

下面结合各个附图对本公开实施例提供的标识码生成方法进行示例性的说明。

图2是根据一示例性实施例示出的一种标识码生成方法的流程图,如图2所示,标识码生成方法用于服务器中,该方法包括以下S11-S13。

S11、服务器获取每个标识码生成器已处理的标识码生成请求的总数量。其中,每个标识码生成请求对应一个标识码业务类型。

在一种可实现的方式中,对于一个标识码生成器而言,该标识码生成器在预设时间段内需要处理多个标识码业务,为了方便统计,可以先统计预设时间段内标识码业务类型对应的标识码生成请求的数量;然后对标识码业务类型对应的标识码生成请求的数量进行求和,从而可以得带该标识码生成器在预设时间段内的已处理的标识码生成请求的总数量。

示例性的,外卖订单的订单号生成业务,与外卖订单的支付编号业务属于不同的标识码业务类型。

S12、服务器确定总数量中存在大于或等于请求量阈值的总数量时,重新生成标识码业务类型与标识码生成器的对应关系。其中,重新生成的对应关系中不同标识码生成器对应的标识码业务类型不同。

在一种可实现的方式中,有多个标识码生成器在服务器中上线时,通过设置请求量阈值,从而可以筛选出同一个周期内处理的标识码业务类型较高的标识码生成器。当任一个标识码生成器已处理的标识码生成请求的总数量大于或等于请求量阈值时,说明该标识码生成器处理的标识码业务类型较高,而有的标识码生成器处理的标识码业务类型较低。因此,需要重新生成标识码业务类型和标识码生成器的对应关系。同时,重新生成的对应关系中不同标识码生成器对应的标识码业务类型不同,使得同一个标识码业务类型在同一个周期内仅有一个标识码生成器接收同一个标识码业务类型的标识码生成请求,进而可以保证每个标识码生成器生成的标识码是严格递增的。

S13、服务器向客户端发送对应关系,以便客户端在发起待发送标识码生成请求时,根据对应关系以及标识码生成请求对应的标识码业务类型,确定接收待发送标识码生成请求的标识码生成器。

在一种可实现的方式中,客户端在发起目标标识码业务类型的标识码生成请求时,需要根据从服务器接收的对应关系,确定与该目标标识码业务类型对应的标识码生成器,并向该标识码生成器发送该目标标识码业务类型的标识码生成请求,从而该标识码生成器在接收到目标标识码生成请求后,生成对应的标识码并通知该客户端,以便该客户端根据该标识码进行业务访问。

由上述可知,本公开实施例提供的标识码生成方法,服务器通过获取每个标识码生成器已处理的标识码生成请求的总数量,从而可以根据每个标识码生成器已处理的标识码生成请求的总数量和请求量阈值确定每个标识码生成器当前的负载使用率。当确定任一个标识码生成器已处理的标识码生成请求的总数量大于或等于请求量阈值时,此时说明该标识码生成器处理的标识码业务类型较高,在重新生成标识码业务和标识码生成器的对应关系后,可以保证每个标识码生成器的负载使用率。客户端在接收到重新生成的对应关系后,在发起待发送标识码生成请求时,根据对应关系以及标识码生成请求对应的标识码业务类型,确定接收待发送标识码生成请求的标识码生成器。由于在同一时刻,标识码业务类型仅有一个标识码生成器在处理从而在保证标识码业务类型生成的标识码是严格递增的同时,提高了标识码生成器的负载利用率,解决了相关技术中在保证ID严格递增的同时,提高负载的利用率的问题。

在一种可实施的方式中,结合图2,如图3所示,本公开实施例提供的标识码生成方法还包括:

S14、服务器根据总数量,确定请求量阈值。

由上述可知,服务器根据每个标识码生成器已处理的标识码生成请求的总数量,确定请求量阈值时,可以有效的反映各个标识码生成器当前的使用率,避免由于请求量阈值设置不当导致频繁重新生成标识码业务类型和标识码生成器的对应关系的问题。

在一种可实施的方式中,请求量阈值满足下述公式:

其中,A表示请求量阈值,M表示标识码生成器的总数量,N

由上述可知,请求量阈值为每个标识码生成器已处理的标识码生成请求的总数量的平均值,从而可以更加准确地反映出各个标识码生成器当前的使用率,进一步可以避免由于请求量阈值设置不当导致频繁重新生成标识码业务类型和标识码生成器的对应关系的问题。

在一种可实施的方式中,结合图2,如图3所示,上述12具体可通过下述S120实现。

S120、服务器确定总数量中存在大于或等于请求量阈值的总数量时,根据总数量,重新生成标识码业务类型与标识码生成器的对应关系。

具体的,服务器确定总数量中存在大于或等于请求量阈值的总数量时,根据每个标识码生成器已处理的标识码生成请求的总数量,重新生成标识码业务类型与标识码生成器的对应关系。

由上述可知,当每个标识码生成器已处理的标识码生成请求的总数量中存在大于或等于请求量阈值的总数量时,说明此时有的标识码生成器处理的标识码业务类型较高,而有的标识码生成器处理的标识码业务类型较低。因此,需要根据每个标识码生成器已处理的标识码生成请求的总数量,确定对应关系,从而避免有的标识码生成器处理的标识码业务类型较高,而有的标识码生成器处理的标识码业务类型较低的问题,保证每个标识码生成器的负载使用率。

在一种可实施的方式中,结合图3,如图4所示,上述120具体可通过下述S1200实现。

S1200、服务器确定总数量中存在大于或等于请求量阈值的总数量时,根据总数量,对所有标识码生成器进行负载均衡,重新生成标识码业务类型与标识码生成器的对应关系。

在一种可实现的方式中,采用最优平均分配算法或者动态规划算法对所有标识码生成器进行负载均衡,重新生成标识码业务类型与标识码生成器的对应关系。

示例性的,以采用最优平均分配算法或者动态规划算法对所有标识码生成器进行负载均衡,重新生成标识码业务类型与标识码生成器的对应关系为例进行说明,服务器根据总数量,对所有标识码生成器进行负载均衡,重新生成标识码业务类型与标识码生成器的对应关系,包括:

服务器确定每个标识码生成器与标识码业务类型的至少一种分配关系。

服务器确定每种分配关系的总请求量。其中,总请求量满足下述公式:

其中,B表示总请求量,M表示标识码生成器的总数量,H表示分配关系中标识码生成器上分配的标识码业务类型的总数,

服务器确定最小的总请求量对应的分配关系为对应关系。

示例性的,假设有3个客户端(分别为客户端1、客户端2和客户端3),3个标识码生成器(分别为标识码生成器1、标识码生成器2和标识码生成器3),客户端1发起了标识码业务类型1、标识码业务类型2和标识码业务类型3,客户端2发起了标识码业务类型4、标识码业务类型5和标识码业务类型6、客户端3发起了标识码业务类型7、标识码业务类型8和标识码业务类型9,此时的对应关系如表1所示。

表1

其中,其它业务类型指新增的标识码业务类型。如标识码业务类型10。

需要说明的是,为了保证新增的标识码业务类型也可以分配到标识码,因此在生成对应关系时需要考虑新加入的标识码业务类型,使得每个客户端在发起标识码业务时,都可以分配到类型,保证用户的体验。

当服务器确定标识码生成器2已处理的标识码生成请求的总数量大于或等于请求量阈值时,服务器确定每个标识码生成器与标识码业务类型可以组合成3种分配关系。

其中,分配关系1中标识码业务类型1、标识码业务类型3和标识码业务类型4对应标识码生成器1,标识码业务类型2、标识码业务类型5、标识码业务类型7和标识码业务类型对应标识码生成器2,标识码业务类型6、标识码业务类型8和标识码业务类型9对应标识码生成器3。

分配关系2中标识码业务类型2、标识码业务类型3、标识码业务类型4和其它业务类型对应标识码生成器1,标识码业务类型1、标识码业务5、标识码业务8和其它业务类型对应标识码生成器2,标识码业务6、标识码业务7和标识码业务9对应标识码生成器3。

分配关系3中标识码业务类型2、标识码业务类型3、标识码业务6和其它业务类型对应标识码生成器1,标识码业务类型1、标识码业务7、标识码业务8和其它业务类型对应标识码生成器2,标识码业务类型4、标识码业务5和标识码业务9对应标识码生成器3。

然后,服务器根据上述公式确定分配关系2的总请求量最小,此时服务器确定分配关系2为重新生成的对应关系。

本领域技术人员应能理解上述“服务器根据每个所述标识码生成器接收的已处理的标识码生成请求,对所有标识码生成器进行负载均衡,重新生成标识码业务类型与标识码生成器的对应关系”的描述仅为举例,其他现有的或今后可能出现的根据每个标识码生成器接收的所有标识码业务的请求量,对所有标识码生成器进行负载均衡,确定对应关系如可适用于本公开,也应包含在本公开保护范围以内,并在此以引用方式包含于此。

由上述可知,服务器根据每个标识码生成器已处理的标识码生成请求的总数量,对所有标识码生成器进行负载均衡,使得重新生成的对应关系中,每个标识码生成器处理的标识码业务更加均衡,提高每个标识码生成器的负载利用率,保证用户的体验。

在一种可实施的方式中,结合图2,如图5所示,本公开实施例提供的标识码生成方法还包括:S15和S16。

S15、服务器在目标客户端存在新增的标识码业务类型的情况下,根据总数量确定新增的标识码业务类型对应的目标标识码生成器。

在一种可实现的方式中,由于每个客户端所发起的标识码业务类型是固定的,当该客户端需要发起新增的标识码业务类型时,此时需要通知服务器其需要发起新增的标识码业务类型。因此,服务器在目标客户端存在新增的标识码业务类型的情况下,根据总数量确定新增的标识码业务类型对应的目标标识码生成器,从而保证该目标客户端在发起新增的标识码业务类型的标识码生成请求时,可以找到对应的目标标识码生成器。

S16、服务器向目标客户端发送指示信息。指示信息用于指示目标客户端向目标标识码生成器发送新增的标识码业务类型对应的标识码生成请求。

在一种可实现的方式中,此处仅是零时指示目标客户端将发起新增的标识码业务类型的标识码生成请求发送至目标标识码生成器,在下一次重新生成对应关系时,该新增的标识码业务类型对应的标识码生成器可能发生改变。

由上述可知,当目标客户端需要发起新增的标识码业务类型时,由于对应关系中并没有该新增的标识码业务类型对应的标识码生成器,因此目标客户端需要通知服务器即将发起新增的标识码业务类型。此时,服务器在确定目标客户端存在新增的标识码业务类型的情况下,根据总数量确定新增的标识码业务类型对应的目标标识码生成器,并向该目标客户端发送指示信息,从而该目标客户端向目标标识码生成器发送新增的标识码业务类型对应的标识码生成请求,保证了每个新增的标识码业务类型均可以快速地找到对应的标识码生成器。

在一种可实施的方式中,结合图5,如图6所示,上述15具体可通过下述S150实现。

S150、服务器根据总数量,确定新增的标识码业务类型对应的目标标识码生成器为总数量中最小总数量对应的标识码生成器。

由上述可知,为了保证每个标识生成器的负载利用率,通过将新增的标识码业务类型分配到最小总数量对应的标识码生成器上,从而可以在不影响其他标识生成器的负载利用率的情况下,提高最小总数量对应的标识码生成器的负载利用率,保证了用户的体验。

在一种可实施的方式中,结合图2,如图7所示,在S12后,本公开实施例提供的标识码生成方法还包括:S17。

S17、服务器向标识码生成器发送重置信息,重置信息用于指示每个标识码生成器清除已有的标识码业务类型对应的历史标识码号段,并重新获取标识码业务类型对应的当前标识码号段。其中,历史标识码号段中的最大标识码小于当前标识码号段中的最小标识码。

由上述可知,本公开实施例提供的标识码生成方法中,服务器在重新生成对应关系后,需要向标识码生成器发送重置信息,从而每个标识码生成器清除已有的标识码业务类型对应的历史标识码号段,并重新获取标识码业务类型对应的当前标识码号段。并且由于历史标识码号段中的最大标识码小于当前标识码号段中的最小标识码,从而保证标识码业务类型生成的标识码是严格递增的。

在一种可实施的方式中,结合图2,如图8所示,在S12后,本公开实施例提供的标识码生成方法还包括:S18和S19。

S18、服务器获取每个标识码生成器已处理的标识码业务类型生成的最大标识码。

在一种可实现的方式中,服务器通过与每个标识码生成器建立长连接,从而可以实时地确定每个标识码生成器在生成标识码业务类型时对应的最大标识码。

S19、服务器向标识码生成器发送携带与其对应的标识码业务类型的最大标识码的目标信息。目标信息用于指示标识码生成器重新生成于其对应的标识码业务类型的最小标识码大于最大标识码。

由上述可知,本公开实施例提供的标识码生成方法中,服务器在重新生成对应关系后,通过获取每个标识码生成器已处理的标识码业务类型生成的最大标识码,从而可以知道每个标识码生成器在生成标识码业务类型时对应的最大标识码。进一步地,、服务器向标识码生成器发送携带与其对应的标识码业务类型的最大标识码的目标信息,从而标识码生成器重新生成于其对应的标识码业务类型的最小标识码大于最大标识码保证标识码业务类型生成的标识码是严格递增的。

图9是根据一示例性实施例示出的一种标识码生成装置。参照图9,包括收发单元101和处理单元102。

收发单元101,被配置为获取每个标识码生成器已处理的标识码生成请求的总数量;其中,每个标识码生成请求对应一个标识码业务类型;处理单元102,被配置为确定收发单元101获取的总数量中存在大于或等于请求量阈值的总数量时,重新生成标识码业务类型与标识码生成器的对应关系;其中,重新生成的对应关系中不同标识码生成器对应的标识码业务类型不同;处理单元102,还被配置为控制收发单元101向客户端发送对应关系,以便客户端在发起待发送标识码生成请求时,根据对应关系以及标识码生成请求对应的标识码业务类型,确定接收待发送标识码生成请求的标识码生成器。

在一种可实施的方式中,处理单元102,还用于根据收发单元101获取的总数量,确定请求量阈值。

在一种可实施的方式中,请求量阈值满足下述公式:

其中,A表示请求量阈值,M表示标识码生成器的总数量,N

在一种可实施的方式中,处理单元102,具体被配置为根据收发单元101获取的总数量,重新生成标识码业务类型与标识码生成器的对应关系。

在一种可实施的方式中,处理单元102,具体被配置为根据收发单元101获取的总数量,对所有标识码生成器进行负载均衡,重新生成标识码业务类型与标识码生成器的对应关系。

在一种可实施的方式中,处理单元102,还被配置为在目标客户端存在新增的标识码业务类型的情况下,根据收发单元101获取的总数量确定新增的标识码业务类型对应的目标标识码生成器;处理单元102,还被配置为控制收发单元101向目标客户端发送指示信息,指示信息用于指示目标客户端向目标标识码生成器发送新增的标识码业务类型对应的标识码生成请求。

在一种可实施的方式中,处理单元102,具体被配置为根据收发单元101获取的总数量,确定新增的标识码业务类型对应的目标标识码生成器为总数量中最小总数量对应的标识码生成器。

在一种可实施的方式中,处理单元102,还被配置为控制收发单元101向标识码生成器发送重置信息,重置信息用于指示每个标识码生成器清除已有的标识码业务类型对应的历史标识码号段,并重新获取标识码业务类型对应的当前标识码号段;其中,历史标识码号段中的最大标识码小于当前标识码号段中的最小标识码。

在一种可实施的方式中,获取每个标识码生成器已处理的标识码业务类型生成的最大标识码;处理单元102,还被配置为控制收发单元101向标识码生成器发送携带与其对应的标识码业务类型的最大标识码的目标信息,目标信息用于指示标识码生成器重新生成于其对应的标识码业务类型的最小标识码大于最大标识码。

当然,本公开的实施例提供的标识码生成装置10包括但不限于上述模块,例如标识码生成装置10还可以包括存储单元103。存储单元103可以用于存储该写标识码生成装置的程序代码,还可以用于存储写标识码生成装置在运行过程中生成的数据,如写请求中的数据等。

另外,上述实施例提供的标识码生成装置10在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将标识码生成装置10的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。

图10为本公开实施例提供的一种标识码生成装置10的结构示意图,如图10所示,该标识码生成装置10可以包括:至少一个处理器51、存储器52、通信接口53和通信总线54。

下面结合图10对标识码生成装置的各个构成部件进行具体的介绍:

其中,处理器51是标识码生成装置的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器51是一个中央处理器(Central Processing Unit,CPU),也可以是特定集成电路(Application Specific Integrated Circuit,ASIC),或者是被配置成实施本公开实施例的一个或多个集成电路,例如:一个或多个DSP,或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)。

在具体的实现中,作为一种实施例,处理器51可以包括一个或多个CPU,例如图10中所示的CPU0和CPU1。且,作为一种实施例,标识码生成装置可以包括多个处理器,例如图10中所示的处理器51和处理器55。这些处理器中的每一个可以是一个单核处理器(Single-CPU),也可以是一个多核处理器(Multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。

存储器52可以是只读存储器(Read-Only Memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(Random Access Memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器52可以是独立存在,通过通信总线54与处理器51相连接。存储器52也可以和处理器51集成在一起。

在具体的实现中,存储器52,用于存储本公开中的数据和执行本公开的软件程序。处理器51可以通过运行或执行存储在存储器52内的软件程序,以及调用存储在存储器52内的数据,执行空调器的各种功能。

通信接口53,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如无线接入网(Radio Access Network,RAN),无线局域网(Wireless Local Area Networks,WLAN)、终端、云端等。通信接口53可以包括收发单元实现接收和发送功能。

通信总线54,可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

作为一个示例,结合图9,标识码生成装置10中的收发单元101实现的功能与图10中的通信接口53的功能相同,处理单元102实现的功能与图10中的处理器51的功能相同,存储单元103实现的功能与图10中的存储器52的功能相同。

本公开另一实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当指令在计算机上运行时,使得计算机执行上述方法实施例所示的方法。

在一些实施例中,所公开的方法可以实施为以机器可读格式被编码在计算机可读存储介质上的或者被编码在其它非瞬时性介质或者制品上的计算机程序指令。

在示例性实施例中,本公开实施例还提供了一种包括指令的存储介质,例如包括指令的存储器102,上述指令可由标识码生成装置的处理器101执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,该非临时性计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

在示例性实施例中,本公开实施例还提供了一种包括一条或多条指令的计算机程序产品,该一条或多条指令可以由标识码生成装置的处理器101执行以完成上述方法。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。

在本公开所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本公开的实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何在本公开揭露的技术范围内的变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。

相关技术
  • 一种标识码生成方法、装置、服务器和存储介质
  • 业务标识码生成方法、装置、存储介质及电子设备
技术分类

06120113212922