我们想在 AWS-EC2 中的 ELB 后面设置 NGINX。NGINX 实例将位于多个 AZ 的自动缩放组中以提供高可用性。在这种情况下,假设有 10 个后端服务器实例由 NGINX 进行负载均衡。NGINX 实例如何相互协作以在所有 10 个实例之间提供更统一的负载平衡?如果每个 NGINX 实例都在一个孤岛中运行,那么负载分布将不均匀,例如,如果每个 NGINX 实例出于某种原因决定对同一组后端服务器进行负载平衡。我查看了白皮书http://d0.awsstatic.com/whitepapers/AWS_NGINX_Plus-whitepaper-final_v4.pdf其中简要描述了ELB背后的NGINX。唯一的参考如下。如果这解决了请求统一分配的具体问题,任何更多信息都将非常有助于理解。
白皮书摘录 ( http://d0.awsstatic.com/whitepapers/AWS_NGINX_Plus-whitepaper-final_v4.pdf )
为了最准确地设置 NGINX Plus 以在负载均衡器后面代理 WebSocket,应在 NGINX 配置中激活对 PROXY 协议的支持。下面的 NGINX 配置片段概述了如何实现对 PROXY 协议的支持的示例: