• nginx 反向代理 proxy_pass 及对比nginx与haproxy反向代理服务器功能、性能的优劣


    1.使用 proxy 去请求另一个域名下的资源,如果跨域资源也部署在同一台机器上,我们甚至可以 proxy 到 127.0.0.1,比如:

    location /api

         { proxy_pass http://127.0.0.1:1234;}

    当客户端请求 /api 这个路径下的资源时服务器就会帮助我们去 127.0.0.1 的 1234 端口上取资源,解决了跨域的问题。proxy_pass 会将当前的 $uri 带过去

    2.Nginx的反向代理负载均衡配置

    upstream backend {  

        server 127.0.0.1:90 weight=1 max_fails=3 fail_timeout=30;
        server 127.0.0.1:91 weight=5 max_fails=3 fail_timeout=30;       
        }
     
    server {
         listen 9090;
         location / {
         proxy_pass http://backend;
         }       
        }
    前端还是使用9090来监听,把请求转发到90和91端口。
    如果让你选择负载均衡器,哪种情况你会选择哪种?
    1.nginx 处理静态图片请求有优势
    2.最核心的问题是代理负载均衡算法,比较少,没有session保持等功能,那就不如用haproxy
    对比nginx说明haproxy反向代理服务器功能、性能的优劣
     
     
    1、haproxy能够做http协议的反向代理,也可以提供基于端口监听服务的反向代理。具备心跳功能,同时能够提供负责均衡服务。
    2、nginx只能做http协议的代理。不具备心跳检测功能。
    3、在同样可行的http协议的代理下,两者性能基本一致。
    参考:http://f.dataguru.cn/thread-527750-1-1.html
               https://www.cnblogs.com/kevingrace/p/6249725.html
     
  • 相关阅读:
    BZOJ1458 士兵占领
    BZOJ5495 [2019省队联测]异或粽子
    BZOJ4516 [Sdoi2016]生成魔咒
    BZOJ2434[NOI2011]阿狸的打字机
    BZOJ4199[Noi2015]品酒大会
    Java多线程ThreadLocal介绍
    Java中volatile关键字的最全总结
    Java多线程学习——任务定时调度
    Java中关于Date等日期类的简单使用
    Java多线程学习——wait方法(信号灯法/生产者消费者模式)
  • 原文地址:https://www.cnblogs.com/hixiaowei/p/9166491.html
Copyright © 2020-2023  润新知