加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 如何使用Rack map在不同的端口上运行两个Thin(或其他)服

发布时间:2020-12-17 02:01:57 所属栏目:百科 来源:网络整理
导读:我的目标是通过Rack进行HTTP和HTTPS / SSL的自动化测试,无需借助代理服务器设置或类似的东西.我有一个我想要测试的宝石,我希望其他人能够进行测试,所以我希望它尽可能地自我控制. App的代码在运行时运行正常,所以它不包含在这里,问题在于Rack部分. 我想做这
我的目标是通过Rack进行HTTP和HTTPS / SSL的自动化测试,无需借助代理服务器设置或类似的东西.我有一个我想要测试的宝石,我希望其他人能够进行测试,所以我希望它尽可能地自我控制.

App的代码在运行时运行正常,所以它不包含在这里,问题在于Rack部分.

我想做这样的事情:

app = Rack::Builder.app do
  map "/" do
    Rack::Handler::WEBrick.run App,Port: 3000
  end

  map "/ssl" do
    Rack::Handler::WEBrick.run App,Port: 3001 # more options for SSL here...
  end
end

run app

我已经尝试了上面代码的几种组合,例如:

http = Rack::Builder.app do
  map "/" do
    run App
  end
end


https = Rack::Builder.app do  
  map "/ssl" do
    run App
  end
end

Rack::Handler::WEBrick.run http,Port: 3000
Rack::Handler::WEBrick.run https,Port: 3001 # more options for SSL here...

在两个服务器设置的情况下,我倾向于在列出的第一个端口上运行一个服务器,然后在中断时它将在列出的下一个端口上运行第二个服务器 – 然后,在下一个中断时,在9292上的另一个服务器或它关闭下.

我显然做的事情不太对劲.

这非常接近,但最终通过两个不同的命令行命令运行两个服务器:
Starting thin server on different ports

任何帮助深表感谢.

解决方法

当前的Thin不支持这个 – 我检查了源代码.

瘦v2仍然是预发布的,但是配置代码看起来像是通过在配置文件中声明多个侦听器来支持它.

但Thin v2仍然是alpha软件.

您还可以切换到另一台服务器,如Unicorn,它明确支持绑定到多个端口或地址.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读