本地负载均衡

1 负载均衡技术

负载:各种资源的当前状态信息

  • CPU使用
  • 内存使用
  • 网络负载
  • 可用缓冲区
  • 应用系统负载
  • 用户数

负载均衡:指服务器的负载信息经过分析决策之后,进行动态分配网络流量等,使得各个服务器的负载趋于相对平衡的状态的一种决策。

负载均衡的指标选取:

  • 内存利用率
  • 网卡流量
  • 硬盘IO吞吐量
  • 服务成功率
  • 在线用户数
  • 响应时间等

2 负载均衡的技术分类

1 基于DNS的负载均衡

最先出现的技术,通过为一个域名配置多个IP地址,同的DNS请求所返回的结果会进行轮换,使得不同用户请求同一个域名时,可以访问不同的服务器来实现。平衡各个服务器的负载。

缺点:为了减少DNS请求的次数以提高访问效率,浏览器常常缓存了DNS查询的结果。如果一个IP处的服务失效,那么浏览器可能仍会根据DNS缓存中所记录的信息向该不可用的服务发送请求

2 基于客户端的负载均衡

客户端实时采集服务器的负载情况,找到可以提供服务的最佳服务器并发起请求。

3 基于OSI模型的负载均衡

3.1 基于数据链路层的负载均衡

基于MAC地址的虚拟MAC地址模式来进行分摊;

  • 外部对虚拟MAC发出请求,负载均衡设备决定响应的实际MAC地址
  • 服务器IP相同,实际MAC不同,他们不会响应ARP

在这里插入图片描述
使用三角传输模式的链路层负载均衡是目前大型网站使用最为广泛的一种负载均衡手段。在Linux平台上最好的链路层负载均衡开源产品是LVS(Linux Virtual Server)。

3.2 基于网络层的负载均衡

IP负载均衡又可以称之为网络层负载均衡,其核心原理就是通过内核驱动更改IP的目的地址来完成数据负载均衡的在这里插入图片描述

3.3 基于传输层的负载均衡

一个虚拟IP和端口,确定什么样的流量需要进行负载均衡,并为用户分配实际的服务器进行服务。

3.4 基于应用层的负载均衡

基于URL等应用层信息,优点是使得整个网络更加智能,极大提高网络层应用系统的灵活性。

4 负载均衡算法

负载均衡技术的核心是负载均衡算法
负载均衡:

  • 静态负载均衡:在任务执行前确定分配到各个服务器的方案
  • 动态负载均衡:根据当前运行状态自适应决定当前的负载均衡策略。

4.1 轮询算法

假设所有服务器处理性能相同,将外部请求按照顺序轮流分配到集群的服务器中。

4.2 加权轮询

保证处理性能强的服务器处理更多访问流量,用权值表示服务器的处理性能,按照权值比例进行分配

4.3 随机均衡

4.4 加权随机

4.5 最小链接算法

动态分配算法,通过当前活跃的连接数来估计服务器的负载情况,新连接请求到当前连接最小的服务器。

4.6 加权最小链接

4.7 目标地址散列算法

目标地址IP,作为key,将其映射到一个可用为未超载的服务器

4.8 源地址散列

原地址进行散列

4.9 基于局部的最少连接算法

5.0 带复制的基于局部连接的最少连接

总结

在满足要求的情况下,尽可能使用简单的算法,提高负载均衡的工作效率,避免瓶颈效应。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值