ngnix反向代理

大部分的configuration和例子我已经看到了,后端服务器要么在同一台机器上,要么在同一个networking上。 有没有任何机构通过广域网在位于不同物理位置的后端服务器上完成这项工作? 如果你那么你的经验是什么?

您可能需要调整您的proxy_connect_timeoutproxy_read_timeout 。 请记住,连接超时不能超过75秒,所以如果您的后端真的很慢,可能无法正常工作。

你可能会得到不好的performance,因为连接总是必须通过你的反向代理到远程后端再返回。 正如coredump所提到的,您可能需要调整代理设置以避免超时。 是不可能将反向代理放在与后端相同的networking上?

如果你想跨地理位置负载平衡,有更好的方法来做到这一点,如像3crowd这样的服务。 上游代理的使用只会减慢速度,您应该直接将用户发送到资源,而不是通过Nginx将其传回。

我目前使用三个nginx节点通过循环DNS向第三方广告服务解决scheme执行此操作。 我们需要绕过边缘用户的一些限制,代理似乎是最好的select。 由于我们的广告调用非常小,而且我们所连接的解决scheme非常强大,所以与正常请求相比,我们并没有看到巨大的减速。 Coredump是正确的,但需要对代理设置进行一些调整,以确保请求不会太长时间挂起。