负载均衡方法和装置制造方法及图纸

技术编号:21458333 阅读:20 留言:0更新日期:2019-06-26 06:16
本申请实施例公开了一种负载均衡方法和装置。该方法的一具体实施方式包括:从通信连接的客户端接收访问请求信息,其中,该访问请求信息中包括源地址和目的地址;根据该源地址从预先存储的散列表中查找下标,以及根据所查找到的下标查找服务器地址,其中,该散列表中存储有具有对应关系的下标表和服务器地址表,且该下标表中的下标是随机分布的;响应于所查找到的服务器地址对应的服务器处于可用状态,将所查找到的服务器地址作为目标服务器地址,将该访问请求信息中的目的地址更改为该目标服务器地址。该实施方式能够将客户端的访问请求分配给服务器进行处理,由于下标是随机分布的能够提升负载均衡的有效性,防止雪崩。

【技术实现步骤摘要】
负载均衡方法和装置
本申请实施例涉及计算机
,具体涉及负载均衡方法和装置。
技术介绍
负载均衡(LoadBalance)建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。负载均衡将客户端的访问请求分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
技术实现思路
本申请实施例提出了负载均衡方法和装置。第一方面,本申请实施例提供了一种负载均衡方法,该方法包括:从通信连接的客户端接收访问请求信息,其中,上述访问请求信息中包括源地址和目的地址;根据上述源地址从预先存储的散列表中查找下标,以及根据所查找到的下标查找服务器地址,其中,上述散列表中存储有具有对应关系的下标表和服务器地址表,且上述下标表中的下标是随机分布的;响应于所查找到的服务器地址对应的服务器处于可用状态,将所查找到的服务器地址作为目标服务器地址,将上述访问请求信息中的目的地址更改为上述目标服务器地址。在一些实施例中,上述根据上述源地址从预先存储的散列表中查找下标,以及根据所查找到的下标查找服务器地址,包括:确定上述的源地址的哈希值,将上述哈希值对上述散列表的大小进行取模,根据取模后的结果查找上述散列表中的下标,以及根据所查找到的下标查找服务器地址。在一些实施例中,上述方法还包括:响应于所查找到的服务器地址对应的服务器处于不可用状态,基于该服务器地址对应的下标,从上述散列表中重新查找下一个服务器地址,其中,上述下一个服务器地址的下标为该服务器地址对应的下标的下一个下标;响应于重新查找到的服务器地址对应的服务器处于可用状态,将重新查找到的服务器地址作为目标服务器地址,将上述访问请求信息中的目的地址更改为上述目标服务器地址。在一些实施例中,上述方法还包括:将更改后的访问请求信息发送给上述目标服务器地址对应的服务器。在一些实施例中,上述预先存储的散列表通过以下步骤得到:对于存储有编号表和服务器地址表的散列表,建立与上述编号表相同的临时序号表;遍历上述临时序号表中的临时序号,并在访问当前临时序号时,执行以下替换操作:将当前临时序号与采用随机算法在临时序号范围内确定的任意一个临时序号互相替换;将执行上述替换操作后得到的临时序号表确定为散列表的下标表,以及存储上述下标表。第二方面,本申请实施例提供了一种负载均衡装置,该装置包括:接收单元,被配置成从通信连接的客户端接收访问请求信息,其中,上述访问请求信息中包括源地址和目的地址;查找单元,被配置成根据上述源地址从预先存储的散列表中查找下标,以及根据所查找到的下标查找服务器地址,其中,上述散列表中存储有具有对应关系的下标表和服务器地址表,且上述下标表中的下标是随机分布的;第一更改单元,被配置成响应于所查找到的服务器地址对应的服务器处于可用状态,将所查找到的服务器地址作为目标服务器地址,将上述访问请求信息中的目的地址更改为上述目标服务器地址。在一些实施例中,查找单元进一步被配置成:确定上述的源地址的哈希值,将上述哈希值对上述散列表的大小进行取模,根据取模后的结果查找上述散列表中的下标,以及根据所查找到的下标查找服务器地址。在一些实施例中,上述装置还包括:第二更改单元,被配置成响应于所查找到的服务器地址对应的服务器处于不可用状态,基于该服务器地址对应的下标,从上述散列表中重新查找下一个服务器地址,其中,上述下一个服务器地址的下标为该服务器地址对应的下标的下一个下标;响应于重新查找到的服务器地址对应的服务器处于可用状态,将重新查找到的服务器地址作为目标服务器地址,将上述访问请求信息中的目的地址更改为上述目标服务器地址。在一些实施例中,上述装置还包括:发送单元,被配置成将更改后的访问请求信息发送给上述目标服务器地址对应的服务器。在一些实施例中,上述预先存储的散列表通过以下步骤得到:对于存储有编号表和服务器地址表的散列表,建立与上述编号表相同的临时序号表;遍历上述临时序号表中的临时序号,并在访问当前临时序号时,执行以下替换操作:将当前临时序号与采用随机算法在临时序号范围内确定的任意一个临时序号互相替换;将执行上述替换操作后得到的临时序号表确定为散列表的下标表,以及存储上述下标表。第三方面,本申请实施例提供了一种服务器,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如负载均衡方法中任一实施例的方法。第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如负载均衡方法中任一实施例的方法。本申请实施例提供的负载均衡方法和装置,首先,从通信连接的客户端接收访问请求信息,其中,上述访问请求信息中包括源地址和目的地址。然后,根据上述源地址从预先存储的散列表中查找下标,以及根据所查找到的下标查找服务器地址,其中,上述散列表中存储有具有对应关系的下标表和服务器地址表,且上述下标表中的下标是随机分布的。之后,响应于所查找到的服务器地址对应的服务器处于可用状态,将所查找到的服务器地址作为目标服务器地址,将上述访问请求信息中的目的地址更改为上述目标服务器地址。该负载均衡方法可以将客户端的访问请求分配给服务器进行处理,下标的随机分布特性可以避免下标固定分布导致的负载连续挂掉引起的雪崩问题。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1是本申请的一个实施例可以应用于其中的示例性系统架构图;图2是根据本申请的负载均衡方法的一个实施例的流程图;图2-1是根据本申请的负载均衡方法的一个实施例的散列表;图2-2是根据本申请的负载均衡方法的一个实施例的临时序号表;图2-3是根据本申请的负载均衡方法的一个实施例的下标表;图2-4是根据本申请的负载均衡方法的一个实施例的服务器地址表;图3是根据本申请实施例的负载均衡方法的一个应用场景的示意图;图4是根据本申请的负载均衡方法的又一个实施例的流程图;图5是根据本申请的负载均衡装置的一个实施例的结构示意图;图6是适于用来实现本申请实施例的服务器的计算机系统的结构示意图。具体实施方式下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关专利技术,而非对该专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关专利技术相关的部分。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。图1示出了可以应用本申请的负载均衡方法或负载均衡装置的示例性系统架构100。如图1所示,系统架构100可以包括终端设备101、102、103,负载均衡器104和服务器105、106、107。网络用以在终端设备101、102、103与负载均衡器104之间和负载均衡器104与服务器105、106、107之间提供通信链路的介质。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。用户可以使用终端设备101、102、103通过网络与负载均衡器104交互,以接收或发本文档来自技高网...

【技术保护点】
1.一种负载均衡方法,包括:从通信连接的客户端接收访问请求信息,其中,所述访问请求信息中包括源地址和目的地址;根据所述源地址从预先存储的散列表中查找下标,以及根据所查找到的下标查找服务器地址,其中,所述散列表中存储有具有对应关系的下标表和服务器地址表,且所述下标表中的下标是随机分布的;响应于所查找到的服务器地址对应的服务器处于可用状态,将所查找到的服务器地址作为目标服务器地址,将所述访问请求信息中的目的地址更改为所述目标服务器地址。

【技术特征摘要】
1.一种负载均衡方法,包括:从通信连接的客户端接收访问请求信息,其中,所述访问请求信息中包括源地址和目的地址;根据所述源地址从预先存储的散列表中查找下标,以及根据所查找到的下标查找服务器地址,其中,所述散列表中存储有具有对应关系的下标表和服务器地址表,且所述下标表中的下标是随机分布的;响应于所查找到的服务器地址对应的服务器处于可用状态,将所查找到的服务器地址作为目标服务器地址,将所述访问请求信息中的目的地址更改为所述目标服务器地址。2.根据权利要求1所述的方法,其中,所述根据所述源地址从预先存储的散列表中查找下标,以及根据所查找到的下标查找服务器地址,包括:确定所述的源地址的哈希值,将所述哈希值对所述散列表的大小进行取模,根据取模后的结果查找所述散列表中的下标,以及根据所查找到的下标查找服务器地址。3.根据权利要求1所述的方法,其中,所述方法还包括:响应于所查找到的服务器地址对应的服务器处于不可用状态,基于该服务器地址对应的下标,从所述散列表中重新查找下一个服务器地址,其中,所述下一个服务器地址的下标为该服务器地址对应的下标的下一个下标;响应于重新查找到的服务器地址对应的服务器处于可用状态,将重新查找到的服务器地址作为目标服务器地址,将所述访问请求信息中的目的地址更改为所述目标服务器地址。4.根据权利要求1-3之一所述的方法,其中,所述方法还包括:将更改后的访问请求信息发送给所述目标服务器地址对应的服务器。5.根据权利要求1-3所述的方法,其中,所述预先存储的散列表通过以下步骤得到:对于存储有编号表和服务器地址表的散列表,建立与所述编号表相同的临时序号表;遍历所述临时序号表中的临时序号,并在访问当前临时序号时,执行以下替换操作:将当前临时序号与采用随机算法在临时序号范围内确定的任意一个临时序号互相替换;将执行所述替换操作后得到的临时序号表确定为散列表的下标表,以及存储所述下标表。6.一种负载均衡装置,包括:接收单元,被配置成从通信连接的客户端接收访问请求信息,其中,所述访问请求信息中包括源地址和目的地址;查找单元,被配置成根据所述源地址从预先存储...

【专利技术属性】
技术研发人员:刘传奇杨光
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1