nginx 支持四层代理 |
您所在的位置:网站首页 › nginx7层 › nginx 支持四层代理 |
背景 nginx 一般支持的是7层代理,支持四层代理一般使用 lvs 或者haprox,但 nginx 从1.9.0 版本开始支持四层代理,但做四层代理时 源码编译需要添加 --with-stream模块 四层代理和7层代理的区别1)四层的负载均衡就是基于IP+端口的负载均衡的 实现四层负载均衡的软件有: F5:硬件负载均衡器,功能很好,但是成本很高。 lvs:重量级的四层负载软件 nginx:轻量级的四层负载软件,带缓存功能,正则表达式较灵活 haproxy:模拟四层转发,较灵活 2)七层的负载均衡就是基于虚拟的URL或主机IP的负载均衡 实现七层负载均衡的软件有: haproxy:天生负载均衡技能,全面支持七层代理,会话保持,标记,路径转移; nginx:只在http协议和mail协议上功能比较好,性能与haproxy差不多; apache:功能较差 Mysql proxy:功能尚可。 stream 使用参考源码编译:记得加--with-stream rpm 包安装:nginx 1.21+ 以上是动态支持的 在nginx.conf 主配置文件添加如下,与 http 同级,参考配置如下 stream { log_format proxy '$remote_addr $remote_port - [$time_local] $status $protocol ' '"$upstream_addr" "$upstream_bytes_sent" "$upstream_connect_time"' ; access_log /var/log/nginx/gaiway.log proxy;upstream example-test{ server 192.168.10.4:8081; server 192.168.10.14:8081; } server { listen 18081; proxy_connect_timeout 3s; proxy_timeout 3s; proxy_pass example-test; } } 更多参考: https://nginx.org/en/docs/stream/ngx_stream_map_module.html https://cloud.tencent.com/developer/article/1027563 https://cloud.tencent.com/developer/article/1026930?from=10680 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |