zoukankan      html  css  js  c++  java
  • nginx笔记6-总结

    1.轮询(默认)
    每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
    2.weight
    指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
    3.ip_hash
    每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题
    4.fair(第三方)
    按后端服务器的响应时间来分配请求,响应时间短的优先分配。
    5.按访问的url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。

    所谓四层就是基于IP+端口的负载均衡。
    七层就是基于URL等应用层信息的负载均衡。
    同理,还有基于mac地址的二层负载均衡和基于IP地址的三层负载均衡;
    换句话说,二层负载均衡会通过一个虚拟MAC地址接收请求,然后在分配到真实的MAC地址,三层负载均衡会通过一个虚拟IP地址接收请求,然后再分配到真实的IP地址,四层通过虚拟IP+端口接收请求,然后再分配到真实的服务器;
    七层通过虚拟机的URL或主机名接受请求,然后再分配到真实的服务器。


    优缺点:
    七层负载均衡也称为“内容交换”,也就是主要通过文中的正真有意义的应用层内容,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。

    以常见的TCP为例,负载均衡设备如果要根据真正的应用层内容在选择服务器,只能先代理最终的服务器和客户端建立连接(三次握手)后,才可能接收到客户端发送的真正应用层内容的报文,然后在根据报文中的特定字段,在加上负载均衡设备设置的服务器选择方式,,决定最终选择的内部服务器,负载均衡设备在这种情况下,更类似于一个代理服务器,负载均衡和前端的客户端以及以后端的服务器会建立TCP连接,所以从这个技术原理上来看,七层负载均衡明显的对负载均衡的设备要求更高,处理七层的能力也必然会低于四层模式的部署方式。四层虽然效率高,简单粗暴,但是当某些业务场景需要要求控制精确的话,四层明显就不如7层控制精确了。

     

  • 相关阅读:
    mybatis0206 延迟加载
    怎样关闭“粘滞键”?
    TNS-12557: TNS:protocol adapter not loadable TNS-12560: TNS:protocol adapter error
    HTTP协议头部与Keep-Alive模式详解
    oracle定时器执行一遍就不执行或本就不执行
    Inflation System Properties
    https://stackoverflow.com/questions/16130292/java-lang-outofmemoryerror-permgen-space-java-reflection
    java spring中对properties属性文件加密及其解密
    annotation配置springMVC的方法了事务不起作用
    SQLPlus在连接时通常有四种方式
  • 原文地址:https://www.cnblogs.com/huangjuncong/p/8324919.html
Copyright © 2011-2022 走看看