1.配置nginx

    1. upstream pic{
    2. server 127.0.0.1:8088;
    3. server 127.0.0.1:8089;
    4. }
    5. server{
    6. listen 80;
    7. server_name www.superboycxx.top;(自己准备一个域名)
    8. location / {
    9. proxy_set_header X-Real-IP $remote_addr;
    10. proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
    11. proxy_set_header Host $http_host;
    12. proxy_set_header X-Nginx-Proxy true;
    13. proxy_pass http://pic;
    14. proxy_redirect off;
    15. }
    16. }

    重启nginx

    轮询方法,先访问server1,然后一直访问server2

    Nginx服务器的负载均衡 - 图1
    如果是将我们的web应用程序这样部署,怎么解决session问题,权限,已认证的信息怎么共享?

    我们查看日志发现,通过nginx负载均衡,从一台服务器,访问到另一台去了,那session肯定没有,所以退出了。
    =================================================
    解决办法:
    1.修改nginx配置文件

    1. IP绑定 ip_hash
    2. 每个请求按访问iphash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
    3. upstream backserver {
    4. ip_hash;
    5. server 192.168.0.14:88;
    6. server 192.168.0.15:80;
    7. }
    1. url_hash(第三方)
    2. 按访问urlhash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。
    3. upstream backserver {
    4. server squid1:3128;
    5. server squid2:3128;
    6. hash $request_uri;
    7. }