【发布时间】:2012-03-23 08:47:46
【问题描述】:
我有多个 Rails 服务器实例,每个实例都需要知道 environment.rb 中自己的监听端口。 request.port 将在控制器中工作,但不能在 environment.rb 的上下文中工作。有办法吗?谢谢!
【问题讨论】:
-
出于好奇,它为什么需要知道这个?
-
@andrew,感谢您的提问。我想我会被问到这里社区的集体草率:) 简短的回答是我们打算在每个服务器实例内的同一端口上打开一个匹配的 UDP 套接字。询问您是否对 UDP 端口的需求感到好奇 :)
-
我只是不认为这是一个特别好的主意。 IMO,您的实际 Web 服务器(nginx、apache 等)应该正在处理这个问题,但无论如何我对这种设置没有太多经验。
-
进一步说明@AndrewMarshall 的观点,每个实例的端口是如何设置的?
-
我们有 10 个服务器实例,每个实例侦听 8000 到 8009 之间的端口。HaProxy 位于最前面以平衡每个实例的流量。这些用于 TCP 请求。我们希望每个服务器实例都打开一个匹配的 UDP 端口。同样,我们还将使用 haproxy 来平衡 UDP 流量。
标签: ruby-on-rails port initializer