【问题标题】:Starting Faye With Rails Automatically使用 Rails 自动启动 Faye
【发布时间】:2014-01-24 05:47:27
【问题描述】:

我在启动我的 Rails 服务器时尝试启动 Faye。我的应用程序根目录中有一个 faye.ru 文件,如下所示:

require 'faye'
faye_server = Faye::RackAdapter.new(:mount => '/queue-listener', :timeout => 45)
run faye_server

每当我启动我的 Rails 服务器时,Faye / Thin 都会尝试在与我的 Rails 服务器相同的端口上打开。我可以添加如下内容:

Thread.new do  
  system("rackup faye.ru -s thin -E production")  
end  

进入初始化程序(在 SO 上找到了这个),但随后在 rails 应用程序端口和默认 (9292) 端口上都开始瘦。我认为它无法在rails端口上启动。我只是对如何在与 rails 服务器不同的端口上启动瘦 / faye 服务器感到困惑。有什么想法吗?

【问题讨论】:

  • 我在很大程度上放弃了这个。我会用厨师来守护它,但从 Rails 开始它肯定会很性感

标签: ruby-on-rails faye


【解决方案1】:

您可以在开发中执行以下操作。在生产中,我建议将其实现为带监控的独立服务器:

如果 Rails.env.development? 需要“事件机” 需要“机架” 需要“瘦” 需要'faye' Faye.logger = Logger.new(Rails.root.join('log/faye.log')) Faye::WebSocket.load_adapter('thin') 线程 = Thread.new 做 EM.运行{ 瘦 = Rack::Handler.get('瘦') app = Faye::RackAdapter.new(mount: '/faye', timeout: 10) thin.run(app, :Port => 8000) 做|服务器| ## 如果需要,设置 SSL: # server.ssl_options = { # :private_key_file => 'path/to/ssl.key', # :cert_chain_file => 'path/to/ssl.crt' # } # server.ssl = true 结尾 } 结尾 at_exit { thread.exit } 结尾

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-27
    • 1970-01-01
    • 2011-03-06
    • 1970-01-01
    相关资源
    最近更新 更多