nginx反向代理和负载均衡

2018-09-16  本文已影响0人  m风满楼

说明反向代理之前,得先明白什么是正向代理,也就是代理。

一:正向代理

正向代理示意图1-0

正向代理类似于一个跳板机:

正向代理解决的问题:

二:反向代理

反向代理解决的问题:

三:对比

正向代理和反向代理的对比3-1

四:负载均衡

我们知道单台服务器的性能是有上限的,当流量很大时,就需要使用多台服务器来共同提供服务,这就是所谓的集群。
负载均衡服务器,就是用来把经过它的流量,按照某种方法,分配到集群中的各台服务器上。这样一来不仅可以承担
更大的流量、降低服务的延迟,还可以避免单点故障造成服务不可用。

http {
    upstream cluster {
        server srv1;
        server srv2;
        server srv3;
    }
    server {
        listen 80;

        location / {
            proxy_pass http://cluster;
        }
    }
}

上述配置,Nginx会作为HTTP反向代理,把访问本机的HTTP请求,均分到后端集群的3台服务器上。
此时使用的HTTP反向代理模块是ngx_http_proxy_module。
在upstream配置块中要指明使用的负载均衡算法,比如hash、ip_hash、least_conn。
这里没有指定,所以使用了默认的HTTP负载均衡算法 - 加权轮询。

参考文章:

图解正向代理、反向代理

上一篇下一篇

猜你喜欢

热点阅读