nginx的反向代理和负载均衡

来源:互联网 发布:mac命令行怎么打开 编辑:程序博客网 时间:2024/06/09 18:42

最近在学习nginx的负载均衡和反向代理,先看下这两个简单的配置吧!

负载均衡配置:

worker_processes 1;events {   worker_connections 1024;}http{    upstream test {//默认是80端口        server 192.168.0.11 weight=2;        server 192.168.0.12 weight=3;    }    server {        listen 80;        location / {   #反向代理的地址            proxy_pass http://test;        }    }}


反向代理配置:

worker_processes 1;events {   worker_connections 1024;}http{    upstream test {//默认是80端口        server 192.168.0.11 weight=2;        server 192.168.0.12 weight=3;    }    server {        listen 80;        location / {    #反向代理的地址            proxy_pass http://test;         #设置主机头和客户端真实地址,以便服务器获取客户端真实IP             #Proxy Settings            proxy_redirect     off;            proxy_set_header   Host             $host;            proxy_set_header   X-Real-IP        $remote_addr;            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;            proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;            proxy_max_temp_file_size 0;            proxy_connect_timeout      90;            proxy_send_timeout         90;            proxy_read_timeout         90;            proxy_buffer_size          4k;            proxy_buffers              32k;            proxy_busy_buffers_size    64k;            proxy_temp_file_write_size 64k;        }    }}

proxy_cache,给个范例供参考: location ~ .*\.html$ { proxy_next_upstream http_502 http_504 error timeout invalid_header; proxy_cache cache_one; proxy_cache_valid 200 304 12h; proxy_cache_valid 301 302 1m; proxy_cache_valid any 1m; proxy_cache_key $host$uri$is_args$args; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Accept-Encoding ""; proxy_ignore_headers "Cache-Control" "Expires"; proxy_pass http://backend_server; expires 5d; } 


从配置上来看,反向代理只是多了Proxy Settings下面的一些设置参数!但从实际的表现结果来看,感觉区别并不是很大,负载均衡已经可以把用户的请求按照相关算法和规则发送到web集群的某台机器,而反向代理也是实现了如此的功能。


负载均衡是做反向代理的目的之一
反向代理主要是缓存东西,以便减少并发操作,是对 proxy_cache相关指令集用户静态内容缓存和fastcgi_cache相关指令集用户动态内容缓存


原创粉丝点击