代理

正向代理

代理客户端,比如VPN,浏览器的XX Proxy。客户端知道目标地址,但是不可直接访问,通过代理去间接访问。

反向代理

代理服务器,比如Ngnix。客户端要访问Shopee,Shopee实际上部署了N台机器,客户端不需要关心要访问具体哪台机器,后面nginx会根据规则做负载均衡,将你的请求打到某台机器。

负载均衡规则

weight轮询: 给定一个权重,也就是比例来分配流量。

upstream backend{
    server serverA weight=1; #default
    
    server serverB weight=6;
}

  

ip_hash: 根据ip做hash来分发请求,同一个ip将会打到同一台机器,部分解决了session共享的问题。缺点是如果某些IP请求量大且集中到了一个或几个server,可能导致对应server负载很高。

url_hash: 根据请求的地址做hash分发请求,同一个请求地址打到同一台机器,有利于nginx或本地缓存。缺点同样是可能导致server压力不均。

fair:根据请求的响应时间智能分发请求。

参考链接:https://mp.weixin.qq.com/s/1DcDY0_4CE5LZ-DXQ3fCpw

原文地址:https://www.cnblogs.com/ZouHongxue/p/12048905.html