负载均衡

一。什么是负载均衡?
由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。通过某种负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器独立地回应客户的请求。

二。为什么要做负载均衡?
1.高可用,低成本抗下高负载。
2.结合软件实现高智能,运用虚拟IP(VIP)地址代表目标服务器和应用,将会话分配到最高可用性的服务器,全程监控每个会话,服务恢复后自动重新登记,并转发客户机和服务器信息包时提供全地址转换。
3.高可靠,集群间服务器彼此形成热备份。

三。有哪些负载均衡的类型?

  1. 基于DNS的负载均衡
    通过DNS服务中的随机名字解析来实现负载均衡,在DNS服务器中,可以为多个不同的地址配置同一个名字,而最终查询这个名字的客户机将在解析这个名字时得到其中一个地址。因此,对于同一个名字,不同的客户机会得到不同的地址,他们也就访问不同地址上的Web服务器,从而达到负载均衡的目的。
  2. 反向代理负载均衡
    使用代理服务器可以将请求转发给内部的Web服务器,让代理服务器将请求均匀地转发给多台内部Web服务器之 一上,从而达到负载均衡的目的。这种代理方式与普通的代理方式有所不同,标准代理方式是客户使用代理访问多个外部Web服务器,而这种代理方式是多个客户使用它访问内部Web服务器,因此也被称为反向代理模式。
  3. 基于NAT的负载均衡技术
    地址转换网关将每个连接均匀转换为不同的内部服务器地址,此后外部网络中的计算机就各自与自己转换得到的地址上服务器进行通信,从而达到负载分担的目的。即将一个外部IP地址映射为多个内部IP地址提供服务。

四。有哪些负载均衡的算法配置?
1.轮询
将请求顺序循环地发到每个服务器。当其中某个服务器发生故障,就把其从顺序循环队列中拿出,不参加下一次的轮询,直到其恢复正常。
2.比率
给每个服务器分配一个加权值为比例,根椐这个比例,把用户的请求分配到每个服务器。当其中某个服务器发生故障,就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。
3.优先权
给所有服务器分组,给每个组定义优先权,将用户的请求分配给优先级最高的服务器组(在同一组内,采用预先设定的轮询或比率算法,分配用户的请求);当最高优先级中所有服务器或者指定数量的服务器出现故障,就把请求送给次优先级的服务器组。这种方式,实际为用户提供一种热备份的方式。
4.最少连接数
记录当前每台服务器或者服务端口上的连接数,新的连接将传递给连接数最少的服务器。当其中某个服务器发生故障,就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。
5.最快响应时间
新的连接传递给那些响应最快的服务器。当其中某个服务器发生故障,就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。
6.哈希算法
将客户端的源地址,端口进行哈希运算,根据运算的结果转发给一台服务器进行处理,当其中某个服务器发生故障,就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。
7.基于策略的负载均衡
针对不同的数据流设置导向规则,用户可自行编辑流量分配策略,利用这些策略对通过的数据流实施导向控制。
8.基于数据包的内容分发
判断HTTP的URL从而确定请求的内容 ,然后将请求分配到相应的服务器,比如URL中带有.jpg的扩展名,就把数据包转发到图片服务器。
五。有哪些负载均衡的免费软件?
1.LVS
2.HAProxy
3.Nginx

你可能感兴趣的:(负载均衡)