CN106469091A - 用于分配可用区的方法和装置 - Google Patents

用于分配可用区的方法和装置 Download PDF

Info

Publication number
CN106469091A
CN106469091A CN201610804192.0A CN201610804192A CN106469091A CN 106469091 A CN106469091 A CN 106469091A CN 201610804192 A CN201610804192 A CN 201610804192A CN 106469091 A CN106469091 A CN 106469091A
Authority
CN
China
Prior art keywords
available area
weight
mark
area
available
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610804192.0A
Other languages
English (en)
Other versions
CN106469091B (zh
Inventor
张德阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201610804192.0A priority Critical patent/CN106469091B/zh
Priority to US15/428,983 priority patent/US10320894B2/en
Publication of CN106469091A publication Critical patent/CN106469091A/zh
Application granted granted Critical
Publication of CN106469091B publication Critical patent/CN106469091B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了用于分配可用区的方法和装置。所述方法的一具体实施方式包括:接收用户终端发送的可用区分配请求,其中,可用区分配请求包括用户标识和目标逻辑可用区标识;将用户标识和目标逻辑可用区标识在可用区分配表中进行匹配;响应于用户标识和目标逻辑可用区标识在可用区分配表中匹配不成功,则从预设的可用区权重表中获取各个可用区的权重,并以各个可用区的权重与各个可用区的权重之和的比值为选取概率,从各个可用区中选取出目标可用区,并将目标可用区分配给用户终端。该实施方式实现了可用区均匀地为用户提供用户所需的资源,避免了可用区资源的浪费。

Description

用于分配可用区的方法和装置
技术领域
本申请涉及计算机技术领域,具体涉及资源分配技术领域,尤其涉及用于分配可用区的方法和装置。
背景技术
数据中心是全球协作的特定设备网络,用来在互联网网络基础设施上传递、加速、展示、计算、存储数据信息。数据中心可以是多功能的建筑物,能容纳多个服务器以及通信设备。这些设备被放置在一起通常是因为它们具有相同的对环境的要求以及物理安全上的需求,并且这样放置便于维护。可用区可以包括至少一个数据中心,因此可用区具备比单个数据中心更强的可用性、容错能力以及可扩展性,用户可以选择可用区来创建资源。
现有的可用区分配方式通常是用户直接选择可用区。然而,用户并不了解各个可用区的资源使用情况,且对于可用区的选择存在个人偏好的问题,因此,可用区无法均匀地为用户提供用户所需的资源,造成了可用区资源的浪费。
发明内容
本申请的目的在于提出一种改进的用于分配可用区的方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请提供了一种用于分配可用区的方法,所述方法包括:接收用户终端发送的可用区分配请求,其中,可用区包括至少一个数据中心,所述可用区分配请求包括用户标识和目标逻辑可用区标识,逻辑可用区标识是展示给用户终端的逻辑可用区的标识;将所述用户标识和所述目标逻辑可用区标识在可用区分配表中进行匹配,其中,所述可用区分配表中包括已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识;响应于所述用户标识和所述目标逻辑可用区标识在所述可用区分配表中匹配不成功,则从预设的可用区权重表中获取各个可用区的权重,并以所述各个可用区的权重与所述各个可用区的权重之和的比值为选取概率,从所述各个可用区中选取出目标可用区,并将所述目标可用区分配给所述用户终端。
在一些实施例中,所述方法还包括:响应于所述用户标识和所述目标逻辑可用区标识在所述可用区分配表中匹配成功,则获取匹配成功的已分配给用户终端的可用区的可用区标识,并将所述匹配成功的已分配给用户终端的可用区的可用区标识所指示的可用区分配给所述用户终端。
在一些实施例中,所述以所述各个可用区的权重与所述各个可用区的权重之和的比值为选取概率,从所述各个可用区中选取出目标可用区,包括:生成权重轮盘图,其中,所述权重轮盘图被等分为第一预设数量个扇区,所述第一预设数量等于所述各个可用区的权重之和,所述各个可用区在所述权重轮盘图中所占的扇区数量等于所述各个可用区的权重;生成随机数,并利用如下公式生成随机转动扇区数H:H=R%W;其中,R为随机数,W为各个可用区的权重之和,%为取余运算符;在所述权重轮盘图上预设起点,并绕着所述权重轮盘图顺时针或逆时针转动H个扇区到达终点;将所述终点所指示的可用区作为所述目标可用区。
在一些实施例中,所述从预设的可用区权重表中获取各个可用区的权重之前,还包括:对所述各个可用区的资源剩余量进行统计分析,计算出所述各个可用区的权重,并写入所述可用区权重表中,其中,所述各个可用区的权重与所述各个可用区的资源剩余量成正比。
在一些实施例中,所述可用区权重表中还包括所述各个可用区的可用区标识;以及所述方法还包括:从所述可用区权重表中获取所述目标可用区的可用区标识。
在一些实施例中,所述方法还包括:将所述用户标识、所述目标逻辑可用区标识和所述目标可用区的可用区标识对应写入所述可用区分配表中。
第二方面,本申请提供了一种用于分配可用区的装置,所述装置包括:接收单元,配置用于接收用户终端发送的可用区分配请求,其中,可用区包括至少一个数据中心,所述可用区分配请求包括用户标识和目标逻辑可用区标识,逻辑可用区标识是展示给用户终端的逻辑可用区的标识;匹配单元,配置用于将所述用户标识和所述目标逻辑可用区标识在可用区分配表中进行匹配,其中,所述可用区分配表中包括已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识;选取单元,配置用于响应于所述用户标识和所述目标逻辑可用区标识在所述可用区分配表中匹配不成功,则从预设的可用区权重表中获取各个可用区的权重,并以所述各个可用区的权重与所述各个可用区的权重之和的比值为选取概率,从所述各个可用区中选取出目标可用区,并将所述目标可用区分配给所述用户终端。
在一些实施例中,所述装置还包括:第一获取单元,配置用于响应于所述用户标识和所述目标逻辑可用区标识在所述可用区分配表中匹配成功,则获取匹配成功的已分配给用户终端的可用区的可用区标识,并将所述匹配成功的已分配给用户终端的可用区的可用区标识所指示的可用区分配给所述用户终端。
在一些实施例中,所述选取单元包括:第一生成子单元,配置用于生成权重轮盘图,其中,所述权重轮盘图被等分为第一预设数量个扇区,所述第一预设数量等于所述各个可用区的权重之和,所述各个可用区在所述权重轮盘图中所占的扇区数量等于所述各个可用区的权重;第二生成子单元,配置用于生成随机数,并利用如下公式生成随机转动扇区数H:H=R%W;其中,R为随机数,W为各个可用区的权重之和,%为取余运算符;转动子单元,配置用于在所述权重轮盘图上预设起点,并绕着所述权重轮盘图顺时针或逆时针转动H个扇区到达终点;作为子单元,配置用于将所述终点所指示的可用区作为所述目标可用区。
在一些实施例中,所述装置还包括:统计分析单元,配置用于对所述各个可用区的资源剩余量进行统计分析,计算出所述各个可用区的权重,并写入所述可用区权重表中,其中,所述各个可用区的权重与所述各个可用区的资源剩余量成正比。
在一些实施例中,所述可用区权重表中还包括所述各个可用区的可用区标识;以及所述装置还包括:第二获取单元,配置用于从所述可用区权重表中获取所述目标可用区的可用区标识。
在一些实施例中,所述装置还包括:写入单元,配置用于将所述用户标识、所述目标逻辑可用区标识和所述目标可用区的可用区标识对应写入所述可用区分配表中。
本申请提供的用于分配可用区的方法和装置,首先将用户终端发送的可用区分配请求中的用户标识和目标逻辑可用区标识在可用区分配表中进行匹配,当匹配不成功时,则从预设的可用区权重表中获取各个可用区的权重,而后以各个可用区的权重与各个可用区的权重之和的比值为选取概率,从各个可用区中选取出目标可用区,最后将目标可用区分配给用户终端,以供用户终端使用目标可用区的资源,从而实现了可用区均匀地为用户提供用户所需的资源,避免了可用区资源的浪费。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的用于分配可用区的方法的一个实施例的流程图;
图3是根据本申请的用于分配可用区的方法的一个信令图;
图4是根据本申请的用于分配可用区的方法的又一个实施例的流程图;
图5是根据本申请的用于分配可用区的装置的一个实施例的结构示意图;
图6是适于用来实现本申请实施例的服务器的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于分配可用区的方法或用于分配可用区的装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104、服务器105和可用区106、107、108。网络104用以在终端设备101、102、103、服务器105和可用区106、107、108之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等,用户还可以使用终端设备101、102、103通过网络104与可用区106、107、108交互,以使用可用区的资源等。
终端设备101、102、103可以是支持使用可用区的资源的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器。例如,服务器105可以是为终端101、102、103分配可用区提供支持的后台可用区分配服务器,后台可用区分配服务器可以对接收到的可用区分配请求等数据进行分析等处理,并将选取出的可用区分配给终端设备以供终端设备使用其资源。服务器105还可以是为可用区106、107、108计算可用区的权重提供支持的后台可用区权重计算服务器,后台可用区权重计算服务器可以首先获取可用区106、107、108的资源剩余量,然后计算出可用区106、107、108的权重,并将其写入后台可用区权重计算服务器中的可用区权重表中。
可用区106、107、108中的任意一个可用区都可以包括至少一个数据中心,服务器105可以为终端设备从可用区106、107、108中选取出可用区以供用户使用其资源。
需要说明的是,本申请实施例所提供的用于分配可用区的方法一般由服务器105执行,相应地,用于分配可用区的装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络、服务器和可用区的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络、服务器和可用区。
继续参考图2,示出了根据本申请的用于分配可用区的方法的一个实施例的流程200。所述的用于分配可用区的方法,包括以下步骤:
步骤201,接收用户终端发送的可用区分配请求。
在本实施例中,用于分配可用区的方法运行于其上的电子设备(例如图1所示的服务器105)可以通过有线连接方式或者无线连接方式从用户终端接收可用区分配请求。其中,可用区包括至少一个数据中心,可用区分配请求包括用户标识和目标逻辑可用区标识,逻辑可用区标识可以是展示给用户终端的逻辑可用区的标识。目标逻辑可用区标识可以是已分配给用户终端的逻辑可用区的标识。
在本实施例中,用户标识可以是唯一识别用户的ID(Identity,身份标识号码)。逻辑可用区标识与可用区标识不同,逻辑可用区标识是展示给用户的标识,并不是真实的可用区的标识,可用区标识是真实的可用区的标识,可用区标识不向用户展示,逻辑可用区与可用区的数量可以相同,并且逻辑可用区与可用区之间存在一定的动态映射关系,这样就可以实现对用户隐藏可用区的细节,确保了可用区的信息安全。
通常,逻辑可用区标识可以存储在一张逻辑可用区表中。实践中,用户可以分为普通用户和VIP用户,不同类型的用户可以拥有不同数量的逻辑可用区,所以逻辑可用区表中还可以对应存储用户标识。用户可以首先通过用户标识查询逻辑可用区表,获取该用户所拥有的所有逻辑可用区标识,并根据自己的偏好从中选取出目标逻辑可用区标识发起可用区分配请求。
需要说明的是,在本实施例中,同一个用户同一时间可以发送一次可用区分配请求,以尽可能地确保可用区分配结果不冲突。
步骤202,将用户标识和目标逻辑可用区标识在可用区分配表中进行匹配。
在本实施例中,基于步骤201得到的可用区分配请求中的用户标识和目标逻辑可用区标识,上述电子设备(例如图1所示的服务器105)可以将用户标识和目标逻辑可用区标识在可用区分配表中进行匹配。其中,可用区分配表中包括已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识。
在本实施例中,将用户标识和目标逻辑可用区标识分别与可用区分配表中的已分配可用区的用户标识和已分配给用户终端的逻辑可用区标识逐一进行匹配,若可用区分配表中存在与用户标识和目标逻辑可用区标识分别相同的已分配可用区的用户标识和已分配给用户终端的逻辑可用区标识,则匹配成功,反之则匹配不成功。
步骤203,响应于用户标识和目标逻辑可用区标识在可用区分配表中匹配不成功,则从预设的可用区权重表中获取各个可用区的权重。
在本实施例中,若用户标识和目标逻辑可用区标识在可用区分配表中匹配不成功,则上述电子设备(例如图1所示的服务器105)可以从预设的可用区权重表中获取各个可用区的权重。其中,可用区权重表是预先设置的数据表,可以用来存储各个可用区的权重。可用区权重表中的各个可用区的权重可以实时更新,也可以定时更新,在本申请中不进行限定。
在本实施例的一些可选的实现方式中,上述电子设备(例如图1所示的服务器105)可以对各个可用区的资源剩余量进行统计分析,计算出各个可用区的权重,并写入可用区权重表中。其中,各个可用区的权重与各个可用区的资源剩余量成正比。作为示例,可用区的资源剩余量可以通过计算可用区的总资源量与可用区被占用的资源量之差而获取。
通常,计算可用区的权重时,除了可以考虑各个可用区的资源剩余量,还可以同时考虑各个可用区的成本和/或状态。其中,成本可以包括但不限于以下至少一项:租金、设备、用电、用水、人力。可用区的状态可以分为正常在用、即将退网、退网、尚未入网等,对于退网或者尚未入网的可用区可以将其权重直接设置为0,对于即将退网的可用区,可以降低其权重甚至可以设置为0,以阻止为用户分配即将退网的可用区。
可选地,可以对各个可用区的资源剩余量和成本进行统计分析,计算出各个可用区的权重。作为示例,首先可以根据可用区的资源剩余量,计算出权重a1,其中,权重a1与可用区的资源剩余量成正比;其次可以根据可用区的成本,计算出权重a2,其中,权重a2与可用区的成本成反比,并为权重a1和权重a2分别设置对应的权重系数m、n;最后根据如下公式计算出可用区的权重a:a=m×a1+n×a2
可选地,可以对各个可用区的资源剩余量和状态进行统计分析,计算出各个可用区的权重。作为示例,首先可以根据可用区的资源剩余量,计算出权重a1,其中,权重a1与可用区的资源剩余量成正比;其次可以根据可用区的状态,计算出权重a3,其中,对于正常在用的可用区,可以将权重a3设置成1,对于退网或者尚未入网的可用区可以将权重a3直接设置为0,对于即将退网的可用区,可以降低权重a3甚至可以设置为0;最后根据如下公式计算出可用区的权重a:a=a1×a3
可选地,可以对各个可用区的资源使用情况、成本和状态进行统计分析,计算出各个可用区的权重。作为示例,首先可以根据可用区的资源剩余量,计算出权重a1,其中,权重a1与可用区的资源剩余量成正比;其次可以根据可用区的成本,计算出权重a2,其中,权重a2与可用区的成本成反比,并为权重a1和权重a2分别设置对应的权重系数m、n;可以根据可用区的状态,计算出权重a3,其中,对于正常在用的可用区,可以将权重a3设置成1,对于退网或者尚未入网的可用区可以将权重a3直接设置为0,对于即将退网的可用区,可以降低权重a3甚至可以设置为0;最后根据如下公式计算出可用区的权重a:a=(m×a1+n×a2)×a3
步骤204,以各个可用区的权重与各个可用区的权重之和的比值为选取概率,从各个可用区中选取出目标可用区。
在本实施例中,基于步骤203获取的各个可用区的权重,上述电子设备(例如图1所示的服务器105)可以首先计算出各个可用区的权重与各个可用区的权重之和的比值,之后以上述比值为选取概率,从各个可用区中选取出目标可用区。其中,每个可用区都可以被选取为目标可用区,只是每个可用区被选取为目标可用区的概率不同,可用区的权重与各个可用区的权重之和的比值越大,该可用区被选取为目标可用区的概率也越大。
在本实施例的一些可选的实施方式中,可用区权重表中还可以包括各个可用区的可用区标识;以及上述电子设备(例如图1所示的服务器105)可以从可用区权重表中获取目标可用区的可用区标识。其中,可用区权重表中各个可用区的可用区标识与各个可用区的权重是一一对应存储的,在以各个可用区的权重与各个可用区的权重之和的比值为选取概率,选取出目标可用区的同时,也可以获取目标可用区的可用区标识。
步骤205,将目标可用区分配给用户终端。
在本实施例中,基于步骤204选取出的目标可用区,上述电子设备(例如图1所示的服务器105)可以将目标可用区分配给用户终端,以供用户终端使用目标可用区的资源。
在本实施例的一些可选的实现方式中,响应于用户标识和目标逻辑可用区标识在可用区分配表中匹配成功,则获取匹配成功的已分配给用户终端的可用区的可用区标识,并将匹配成功的已分配给用户终端的可用区的可用区标识所指示的可用区分配给用户终端。在可用区分配表中,已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识是一一对应存储的,所以当用户标识和目标逻辑可用区标识在可用区分配表中匹配成功时,也可以获取匹配成功的已分配给用户终端的可用区的可用区标识,并将匹配成功的已分配给用户终端的可用区的可用区标识所指示的可用区分配给用户终端以供用户使用其资源。从而实现了同一个用户选取同一个逻辑可用区发起可用区分配请求时,均为用户分配同一个可用区以供用户使用其资源,既便于管理,又确保了访问的低延时。
在本实施例的一些可选的实施方式中,上述电子设备(例如图1所示的服务器105)可以将用户标识、目标逻辑可用区标识和目标可用区的可用区标识对应写入可用区分配表中,从而实现了可用区分配表的实时更新。
继续参见图3,图3是根据本实施例的用于分配可用区的方法的信令图。在图3的信令图中,如301所示,用户终端向服务器发起一个可用区分配请求;如302所示,服务器可以将可用区分配请求中用户标识和目标逻辑可用区标识在可用区分配表中进行匹配;如303所示,当匹配不成功时,则从预设的可用区权重表中获取各个可用区的权重,并以各个可用区的权重与各个可用区的权重之和的比值为选取概率,从各个可用区中选取出目标可用区;如304所示,服务器将目标可用区分配给用户终端;如305所示,用户终端使用目标可用区的资源。
本申请的上述实施例提供的方法通过以各个可用区的权重与各个可用区的权重之和的比值为选取概率,从各个可用区中选取出目标可用区,从而实现了可用区均匀地为用户提供用户所需的资源,避免了可用区资源的浪费。
进一步参考图4,其示出了用于分配可用区的方法的又一个实施例的流程400。该用于分配可用区的方法的流程400,包括以下步骤:
步骤401,接收用户终端发送的可用区分配请求。
在本实施例中,用于分配可用区的方法运行于其上的电子设备(例如图1所示的服务器105)可以通过有线连接方式或者无线连接方式从用户终端接收可用区分配请求。其中,可用区包括至少一个数据中心,可用区分配请求包括用户标识和目标逻辑可用区标识,逻辑可用区标识是展示给用户终端的逻辑可用区的标识。
步骤402,将用户标识和目标逻辑可用区标识在可用区分配表中进行匹配。
在本实施例中,基于步骤401得到的可用区分配请求中的用户标识和目标逻辑可用区标识,上述电子设备(例如图1所示的服务器105)可以将用户标识和目标逻辑可用区标识在可用区分配表中进行匹配。其中,可用区分配表中包括已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识。
步骤403,响应于用户标识和目标逻辑可用区标识在可用区分配表中匹配不成功,则从预设的可用区权重表中获取各个可用区的权重。
在本实施例中,若用户标识和目标逻辑可用区标识在可用区分配表中匹配不成功,则上述电子设备(例如图1所示的服务器105)可以从预设的可用区权重表中获取各个可用区的权重。
步骤404,生成权重轮盘图。
在本实施例中,基于步骤403中获取各个可用区的权重,上述电子设备(例如图1所示的服务器105)可以生成权重轮盘图。其中,权重轮盘图被等分为第一预设数量个扇区,第一预设数量等于各个可用区的权重之和,各个可用区在权重轮盘图中所占的扇区数量等于各个可用区的权重,即各个可用区在权重轮盘图上所占的比例等于各个可用区的权重与各个可用区的权重的比值。
步骤405,生成随机数,并利用如下公式生成随机转动扇区数H:H=R%W。
在本实施例中,上述电子设备(例如图1所示的服务器105)可以首先生成随机数,然后基于随机数生成随机转动扇区数。其中,R为随机数,W为各个物理可用区的权重之和,%为取余运算符。
在本实施例中,可以采用C语言、C++、C#、Java等程序语言和软件中的随机数生成函数生成随机数,随机数的范围为[0,max],并且max应当不小于W。作为示例,随机数的范围为[0,1000],生成的随机数R为89,W为10,则随机转动扇区数为H为9。
步骤406,在权重轮盘图上预设起点,并绕着权重轮盘图顺时针或逆时针转动H个扇区到达终点。
在本实施例中,基于步骤405中生成的随机转动扇区数,上述电子设备(例如图1所示的服务器105)可以首先在权重轮盘图上预设起点,然后绕着权重轮盘图顺时针或逆时针转动随机转动扇区数个扇区到达终点。作为示例,权重轮盘图共有10个扇区,预设一个起点,该起点所指示的扇区编号为0,然后顺时针依次为其他扇区编号1-9,当随机转动扇区数为H为9,从预设起点开始,绕着权重轮盘图顺时针转动9个扇区,终点即落在编号为9的扇区上。
步骤407,将终点所指示的可用区作为目标可用区。
在本实施例中,基于步骤406中的终点,上述电子设备(例如图1所示的服务器105)可以将上述终点所指示的可用区作为目标可用区。作为示例,终点落在编号为9的扇区上,编号为9的扇区所指示的可用区即为目标可用区。
步骤408,将目标可用区分配给用户终端。
在本实施例中,基于步骤407选取出的目标可用区,上述电子设备(例如图1所示的服务器105)可以将目标可用区分配给用户终端。
从图4中可以看出,与图2对应的实施例相比,本实施例中的用于分配可用区的方法的流程400突出了选取目标可用区的步骤。由此,本实施例描述的方案可以更方便地、快速地选取出目标可用区。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种用于分配可用区的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例所述的用于分配可用区的装置500包括:接收单元501、匹配单元502和选取单元503。其中,接收单元501,配置用于接收用户终端发送的可用区分配请求,其中,可用区包括至少一个数据中心,可用区分配请求包括用户标识和目标逻辑可用区标识,逻辑可用区标识是展示给用户终端的逻辑可用区的标识;匹配单元502,配置用于将用户标识和目标逻辑可用区标识在可用区分配表中进行匹配,其中,可用区分配表中包括已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识;选取单元503,配置用于响应于用户标识和目标逻辑可用区标识在可用区分配表中匹配不成功,则从预设的可用区权重表中获取各个可用区的权重,并以各个可用区的权重与各个可用区的权重之和的比值为选取概率,从各个可用区中选取出目标可用区,并将目标可用区分配给用户终端。
在本实施例中,用于分配可用区的装置的接收单元501可以通过有线连接方式或者无线连接方式从用户终端接收可用区分配请求。其中,可用区包括至少一个数据中心,可用区分配请求包括用户标识和目标逻辑可用区标识,逻辑可用区标识是展示给用户终端的逻辑可用区的标识。
在本实施例中,基于接收单元501得到的可用区分配请求中的用户标识和目标逻辑可用区标识,上述匹配单元502可以将用户标识和目标逻辑可用区标识在可用区分配表中进行匹配。其中,可用区分配表中包括已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识。
在本实施例中,基于上述匹配单元502匹配不成功时,则上述选取单元503可以首先从预设的可用区权重表中获取各个可用区的权重,而后以各个可用区的权重与各个可用区的权重之和的比值为选取概率,从各个可用区中选取出目标可用区,最后将目标可用区分配给用户终端。
在本实施例的一些可选的实现方式中,上述装置500还包括:第一获取单元,配置用于响应于用户标识和目标逻辑可用区标识在可用区分配表中匹配成功,则获取匹配成功的已分配给用户终端的可用区的可用区标识,并将匹配成功的已分配给用户终端的可用区的可用区标识所指示的可用区分配给用户终端。
在本实施例的一些可选的实现方式中,上述选取单元503包括:第一生成子单元,配置用于生成权重轮盘图,其中,权重轮盘图被等分为第一预设数量个扇区,第一预设数量等于各个可用区的权重之和,各个可用区在权重轮盘图中所占的扇区数量等于各个可用区的权重;第二生成子单元,配置用于生成随机数,并利用如下公式生成随机转动扇区数H:H=R%W;其中,R为随机数,W为各个可用区的权重之和,%为取余运算符;转动子单元,配置用于在权重轮盘图上预设起点,并绕着权重轮盘图顺时针或逆时针转动H个扇区到达终点;作为子单元,配置用于将终点所指示的可用区作为目标可用区。
在本实施例的一些可选的实现方式中,上述装置500还包括:统计分析单元,配置用于对各个可用区的资源剩余量进行统计分析,计算出各个可用区的权重,并写入可用区权重表中,其中,各个可用区的权重与各个可用区的资源剩余量成正比。
在本实施例的一些可选的实现方式中,可用区权重表中还包括各个可用区的可用区标识;以及上述装置500还包括:第二获取单元,配置用于从可用区权重表中获取目标可用区的可用区标识。
在本实施例的一些可选的实现方式中,上述装置500还包括:写入单元,配置用于将用户标识、目标逻辑可用区标识和目标可用区的可用区标识对应写入可用区分配表中。
下面参考图6,其示出了适于用来实现本申请实施例的服务器的计算机系统600的结构示意图。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的方法中限定的上述功能。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收单元、匹配单元和选取单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“接收用户终端发送的可用区分配请求的单元”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:接收用户终端发送的可用区分配请求,其中,可用区包括至少一个数据中心,所述可用区分配请求包括用户标识和目标逻辑可用区标识,逻辑可用区标识是展示给用户终端的逻辑可用区的标识;将所述用户标识和所述目标逻辑可用区标识在可用区分配表中进行匹配,其中,所述可用区分配表中包括已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识;响应于所述用户标识和所述目标逻辑可用区标识在所述可用区分配表中匹配不成功,则从预设的可用区权重表中获取各个可用区的权重,并以所述各个可用区的权重与所述各个可用区的权重之和的比值为选取概率,从所述各个可用区中选取出目标可用区,并将所述目标可用区分配给所述用户终端。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (12)

1.一种用于分配可用区的方法,其特征在于,所述方法包括:
接收用户终端发送的可用区分配请求,其中,可用区包括至少一个数据中心,所述可用区分配请求包括用户标识和目标逻辑可用区标识,逻辑可用区标识是展示给用户终端的逻辑可用区的标识;
将所述用户标识和所述目标逻辑可用区标识在可用区分配表中进行匹配,其中,所述可用区分配表中包括已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识;
响应于所述用户标识和所述目标逻辑可用区标识在所述可用区分配表中匹配不成功,则从预设的可用区权重表中获取各个可用区的权重,并以所述各个可用区的权重与所述各个可用区的权重之和的比值为选取概率,从所述各个可用区中选取出目标可用区,并将所述目标可用区分配给所述用户终端。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述用户标识和所述目标逻辑可用区标识在所述可用区分配表中匹配成功,则获取匹配成功的已分配给用户终端的可用区的可用区标识,并将所述匹配成功的已分配给用户终端的可用区的可用区标识所指示的可用区分配给所述用户终端。
3.根据权利要求1所述的方法,其特征在于,所述以所述各个可用区的权重与所述各个可用区的权重之和的比值为选取概率,从所述各个可用区中选取出目标可用区,包括:
生成权重轮盘图,其中,所述权重轮盘图被等分为第一预设数量个扇区,所述第一预设数量等于所述各个可用区的权重之和,所述各个可用区在所述权重轮盘图中所占的扇区数量等于所述各个可用区的权重;
生成随机数,并利用如下公式生成随机转动扇区数H:
H=R%W;
其中,R为随机数,W为各个可用区的权重之和,%为取余运算符;
在所述权重轮盘图上预设起点,并绕着所述权重轮盘图顺时针或逆时针转动H个扇区到达终点;
将所述终点所指示的可用区作为所述目标可用区。
4.根据权利要求1所述的方法,其特征在于,所述从预设的可用区权重表中获取各个可用区的权重之前,还包括:
对所述各个可用区的资源剩余量进行统计分析,计算出所述各个可用区的权重,并写入所述可用区权重表中,其中,所述各个可用区的权重与所述各个可用区的资源剩余量成正比。
5.根据权利要求1所述的方法,其特征在于,所述可用区权重表中还包括所述各个可用区的可用区标识;以及所述方法还包括:
从所述可用区权重表中获取所述目标可用区的可用区标识。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
将所述用户标识、所述目标逻辑可用区标识和所述目标可用区的可用区标识对应写入所述可用区分配表中。
7.一种用于分配可用区的装置,其特征在于,所述装置包括:
接收单元,配置用于接收用户终端发送的可用区分配请求,其中,可用区包括至少一个数据中心,所述可用区分配请求包括用户标识和目标逻辑可用区标识,逻辑可用区标识是展示给用户终端的逻辑可用区的标识;
匹配单元,配置用于将所述用户标识和所述目标逻辑可用区标识在可用区分配表中进行匹配,其中,所述可用区分配表中包括已分配可用区的用户标识、已分配给用户终端的可用区的可用区标识和逻辑可用区标识;
选取单元,配置用于响应于所述用户标识和所述目标逻辑可用区标识在所述可用区分配表中匹配不成功,则从预设的可用区权重表中获取各个可用区的权重,并以所述各个可用区的权重与所述各个可用区的权重之和的比值为选取概率,从所述各个可用区中选取出目标可用区,并将所述目标可用区分配给所述用户终端。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第一获取单元,配置用于响应于所述用户标识和所述目标逻辑可用区标识在所述可用区分配表中匹配成功,则获取匹配成功的已分配给用户终端的可用区的可用区标识,并将所述匹配成功的已分配给用户终端的可用区的可用区标识所指示的可用区分配给所述用户终端。
9.根据权利要求7所述的装置,其特征在于,所述选取单元包括:
第一生成子单元,配置用于生成权重轮盘图,其中,所述权重轮盘图被等分为第一预设数量个扇区,所述第一预设数量等于所述各个可用区的权重之和,所述各个可用区在所述权重轮盘图中所占的扇区数量等于所述各个可用区的权重;
第二生成子单元,配置用于生成随机数,并利用如下公式生成随机转动扇区数H:
H=R%W;
其中,R为随机数,W为各个可用区的权重之和,%为取余运算符;
转动子单元,配置用于在所述权重轮盘图上预设起点,并绕着所述权重轮盘图顺时针或逆时针转动H个扇区到达终点;
作为子单元,配置用于将所述终点所指示的可用区作为所述目标可用区。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
统计分析单元,配置用于对所述各个可用区的资源剩余量进行统计分析,计算出所述各个可用区的权重,并写入所述可用区权重表中,其中,所述各个可用区的权重与所述各个可用区的资源剩余量成正比。
11.根据权利要求7所述的装置,其特征在于,所述可用区权重表中还包括所述各个可用区的可用区标识;以及所述装置还包括:
第二获取单元,配置用于从所述可用区权重表中获取所述目标可用区的可用区标识。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:
写入单元,配置用于将所述用户标识、所述目标逻辑可用区标识和所述目标可用区的可用区标识对应写入所述可用区分配表中。
CN201610804192.0A 2016-09-05 2016-09-05 用于分配可用区的方法和装置 Active CN106469091B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610804192.0A CN106469091B (zh) 2016-09-05 2016-09-05 用于分配可用区的方法和装置
US15/428,983 US10320894B2 (en) 2016-09-05 2017-02-09 Method and apparatus for allocating availability zone

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610804192.0A CN106469091B (zh) 2016-09-05 2016-09-05 用于分配可用区的方法和装置

Publications (2)

Publication Number Publication Date
CN106469091A true CN106469091A (zh) 2017-03-01
CN106469091B CN106469091B (zh) 2018-05-18

Family

ID=58230152

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610804192.0A Active CN106469091B (zh) 2016-09-05 2016-09-05 用于分配可用区的方法和装置

Country Status (2)

Country Link
US (1) US10320894B2 (zh)
CN (1) CN106469091B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107689925A (zh) * 2017-09-28 2018-02-13 平安科技(深圳)有限公司 基于云监控的负载均衡优化方法及装置
CN110572453A (zh) * 2019-09-06 2019-12-13 杭州涂鸦信息技术有限公司 一种同可用区加权负载均衡的方法
CN113840302A (zh) * 2020-06-23 2021-12-24 中国移动通信集团上海有限公司 退频小区的确定方法、装置、设备及计算机存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2237498A1 (en) * 2008-02-04 2010-10-06 Huawei Technologies Co., Ltd. A method, system, gateway device and authentication server for allocating multiservice resources
US20150196841A1 (en) * 2014-01-15 2015-07-16 Electronics And Telecommunications Research Institute Load balancing system and method for rendering service in cloud gaming environment
CN104954277A (zh) * 2015-06-17 2015-09-30 深圳市创梦天地科技有限公司 一种负载均衡方法、网关服务器及相关系统
CN104954468A (zh) * 2015-06-18 2015-09-30 小米科技有限责任公司 资源的分配方法及装置
CN105607947A (zh) * 2015-12-11 2016-05-25 西北工业大学 一种新的云环境虚拟机调度方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8606922B1 (en) * 2010-09-27 2013-12-10 Amazon Technologies, Inc. Dynamic resource zone mapping

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2237498A1 (en) * 2008-02-04 2010-10-06 Huawei Technologies Co., Ltd. A method, system, gateway device and authentication server for allocating multiservice resources
US20150196841A1 (en) * 2014-01-15 2015-07-16 Electronics And Telecommunications Research Institute Load balancing system and method for rendering service in cloud gaming environment
CN104954277A (zh) * 2015-06-17 2015-09-30 深圳市创梦天地科技有限公司 一种负载均衡方法、网关服务器及相关系统
CN104954468A (zh) * 2015-06-18 2015-09-30 小米科技有限责任公司 资源的分配方法及装置
CN105607947A (zh) * 2015-12-11 2016-05-25 西北工业大学 一种新的云环境虚拟机调度方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107689925A (zh) * 2017-09-28 2018-02-13 平安科技(深圳)有限公司 基于云监控的负载均衡优化方法及装置
CN107689925B (zh) * 2017-09-28 2020-01-14 平安科技(深圳)有限公司 基于云监控的负载均衡优化方法及装置
US10992581B2 (en) 2017-09-28 2021-04-27 Ping An Technology (Shenzhen) Co., Ltd. Methods and devices for optimizing load balancing based on cloud monitoring
CN110572453A (zh) * 2019-09-06 2019-12-13 杭州涂鸦信息技术有限公司 一种同可用区加权负载均衡的方法
CN113840302A (zh) * 2020-06-23 2021-12-24 中国移动通信集团上海有限公司 退频小区的确定方法、装置、设备及计算机存储介质
CN113840302B (zh) * 2020-06-23 2023-07-21 中国移动通信集团上海有限公司 退频小区的确定方法、装置、设备及计算机存储介质

Also Published As

Publication number Publication date
CN106469091B (zh) 2018-05-18
US10320894B2 (en) 2019-06-11
US20180069921A1 (en) 2018-03-08

Similar Documents

Publication Publication Date Title
CN108510389B (zh) 基于区块链的智能合约调用方法、设备及可读存储介质
CN103841134B (zh) 基于api发送、接收信息的方法、装置及系统
CN102567115B (zh) 云系统中用于信息技术资源分配和利用跟踪的装置和方法
CN104243405B (zh) 一种请求处理方法、装置及系统
CN107920138A (zh) 一种用户统一标识生成方法、装置及系统
CN104378342A (zh) 多账号验证方法、装置及系统
CN106843755A (zh) 用于服务器集群的数据均衡方法与装置
CN106455056A (zh) 定位方法和装置
CN108881500B (zh) 一种域名保护系统的配置方法及配置装置
CN106131055A (zh) 用于分配操作权限的方法和装置
CN106469091A (zh) 用于分配可用区的方法和装置
CN109376011A (zh) 虚拟化系统中管理资源的方法和装置
CN109246201A (zh) 云资源交付方法、处理器以及存储介质
US20030233336A1 (en) System to retate personal information to a unique identifier
CN107148020A (zh) WiFi共享系统及其方法、无线网络设备及路由器
CN105511914B (zh) 应用更新方法、装置和系统
CN113114503B (zh) 基于应用交付网络需求的部署方法及装置
CN103634322B (zh) 一种应用程序的心跳管理方法、装置及系统
CN107844566A (zh) 一种dump控制方法及其系统
CN110300071A (zh) 物联网设备的服务器资源获取方法及相关设备
CN106453677A (zh) 一种地址分配的方法和装置
CN114221933B (zh) 手机银行多中心多活的寻址方法、装置及系统
WO2017167129A1 (zh) 一种为用户分配数据中心的方法和设备
CN112508693B (zh) 基于用户标签的资源分配渠道分配方法、装置和电子设备
CN108259639A (zh) Ip地址分配方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant