请教openresty中实用nginx配置反向代理,如何支持10W并发

859 views
Skip to first unread message

weish...@163.com

unread,
May 15, 2017, 5:56:27 AM5/15/17
to openresty
我现在需要用openresty搭建waf系统,用到nginx的反向代理。按照理论来说,使用nginx代理时,作为客户端段向源站服务器发起请求,由于端口数目限制,每个外网ip可以发起6万多并发连接。

于是我给机器机的外网口配置了多个外网IP,按照理论来说,配置多个外网IP就可以增加并发请求数。

查看nginx的反向代理配置,可以通过proxy_bind来指定ip代理访问源站,可是只能配置一个ip,并不能配置多个ip。

当然可以通过配置的location,不通location指定不同的ip,可是现在实际情况是 location只有一个,就是根目录/。

请问大家,有什么其他分方法,可以配置nginx代理反问源站,使用多个ip的访问。

 

Zexuan Luo

unread,
May 15, 2017, 9:57:30 PM5/15/17
to openresty
proxy_bind 可以用变量的。
像这样 proxy_bind $proxy_addr;
$proxy_addr 的值可以通过 set_by_lua* 设置

在 2017年5月15日星期一 UTC+8下午5:56:27,weish...@163.com写道:

Zexuan Luo

unread,
May 16, 2017, 5:31:57 AM5/16/17
to open...@googlegroups.com
set_by_lua* 里面,从 ip 列表里随机找一个作为 proxy_bind 变量的值,这样做不到不同请求用不同的 ip 地址?

---------- 已转发邮件 ----------
发件人: <weish...@163.com>
日期: 2017年5月16日 上午10:56
主题: Private message regarding: 请教openresty中实用nginx配置反向代理,如何支持10W并发
收件人: spacewa...@gmail.com


变量方式也只能使用一个ip的,proxy_bind后面只能绑定一个ip地址。我的需求是如何绑定多个ip,类似upstream那样,可以根据ip进行负载

tokers

unread,
May 16, 2017, 7:40:33 AM5/16/17
to openresty

将你的多个 ip,组织成一个 upstream{},然后 proxy_pass 到这个 upstream,这样即可根据不同负载均衡算法,使用不同的源站 IP 回源

weish...@163.com

unread,
May 16, 2017, 10:14:40 PM5/16/17
to openresty
使用set_by_lua 可以说实现


On Monday, May 15, 2017 at 5:56:27 PM UTC+8, weish...@163.com wrote:

李爽

unread,
Jun 30, 2017, 5:22:43 AM6/30/17
to openresty
同问, 不知道openresty如何像haproxy这样配置

配置haproxy支持使用多个lan内网ip做负载均衡以突破haproxy机只支持64k连接(突破单ip 65535端口限制)

server web1 10.8.8.10 : 80 check source 10.8.8.2 : 1025 – 65000
server web2 10.8.8.11 : 80 check source 10.8.8.3 : 1025 – 65000
server web3 10.8.8.12 : 80 check source 10.8.8.4 : 1025 – 65000

在 2017年5月15日星期一 UTC+8下午5:56:27,weish...@163.com写道:
我现在需要用openresty搭建waf系统,用到nginx的反向代理。按照理论来说,使用nginx代理时,作为客户端段向源站服务器发起请求,由于端口数目限制,每个外网ip可以发起6万多并发连接。

Guanglin Lv

unread,
Jul 9, 2017, 8:43:36 PM7/9/17
to openresty
参考:https://www.nginx.com/blog/overcoming-ephemeral-port-exhaustion-nginx-plus/

在 2017年6月30日星期五 UTC+8下午5:22:43,李爽写道:

wwek

unread,
Nov 1, 2017, 3:08:04 AM11/1/17
to open...@googlegroups.com
非常感谢,这篇文章讲的很清除了, 而且 proxy上有 proxy_bind可以配置

Guanglin Lv <anym...@qq.com>于2017年7月10日周一 上午8:43写道:
--
--
邮件来自列表“openresty”,专用于技术讨论!
订阅: 请发空白邮件到 openresty...@googlegroups.com
发言: 请发邮件到 open...@googlegroups.com
退订: 请发邮件至 openresty+...@googlegroups.com
归档: http://groups.google.com/group/openresty
官网: http://openresty.org/
仓库: https://github.com/agentzh/ngx_openresty
教程: http://openresty.org/download/agentzh-nginx-tutorials-zhcn.html
Reply all
Reply to author
Forward
0 new messages