【问题标题】:Running Unicorn behind Amazon ELB在 Amazon ELB 后面运行 Unicorn
【发布时间】:2014-03-05 06:34:36
【问题描述】:

我们正在考虑将 AWS 用于我们的托管环境并设置了一个测试 VPC。目前,我们在 nginx 后面使用 Unicorn 运行 rails 应用程序。在尝试在 ELB 后面设置我们的服务器时,由于“健康检查失败”,它们不断被踢出。

但是,运行状况检查返回状态 200,并且在达到所需数量的 200 状态后不久将返回活动状态。一旦请求开始到达服务器,ELB 就会再次丢弃服务器。据我所知,这是因为 unicorn 不会保持连接打开,并且会在请求完成后关闭连接。从那里的故障排除页面上,ELB 显然不喜欢这个:http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/ts-elb-healthcheck.html

我是否正确,这是问题所在?有没有办法在不设置额外的 nginx 服务器的情况下解决这个问题?是否有任何 Unicorn 替代品与 Amazon ELB 配合得很好?

【问题讨论】:

    标签: ruby-on-rails amazon-web-services unicorn amazon-elb


    【解决方案1】:

    我花了一天的时间试图让 gunicorn(基于 python)在 ELB 后面工作。我看起来它在 nginx 后面工作正常(手指交叉)。确保 elb 健康检查不会直接发送给独角兽。它应该通过 nginx。

    据我了解,独角兽风格是获取请求,处理它,然后继续。 ELB 想要保持连接打开以提高效率。 Nginx 可以毫无问题地处理许多连接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-27
      • 2013-12-01
      • 2014-03-09
      • 1970-01-01
      • 2012-03-04
      • 2014-02-22
      • 2015-11-18
      • 1970-01-01
      相关资源
      最近更新 更多