很多人都询问过Rails在这个网站上的托管情况,但是我对后端的内容并不熟悉,知道是否存在差异。
我想托管一些Ruby CGI'webservices',基本上只是从POST请求获取参数,访问MySQL数据库并返回数据的ruby方法。
我看过RoR,看起来有点矫枉过正,我可以说它是为了加速数据baesd CRUD网站的开发,这完全不是我正在做的事情。
所以我的问题是,这会影响我选择的托管服务提供商吗?有没有人推荐一个好的Ruby主机用于CGI操作?我不熟悉FastCGI,mod_ruby,Passenger,Mongrel等以及它们对性能,可伸缩性等的意义。我只是想以相当好的性能托管我的ruby脚本,并且那里的所有信息(和这里)似乎专注于轨道。
答案 0 :(得分:9)
首先,如果你想要轻量级,Sinatra通常是我的首选。将其与rack和Passenger配对以获得最佳效果。这不是CGI,但实际上,CGI很少与Ruby很好地匹配。
这是“Hello World!”来自主页的Sinatra应用程序:
require 'rubygems'
require 'sinatra'
get '/hi' do
"Hello World!"
end
难以获得更轻量级的效果。
对于提供者,任何支持Passenger(mod_rack)的人都应该能够处理Sinatra。我个人非常喜欢Slicehost,但他们是VPS主机,这意味着您需要自己安装和管理整个堆栈。如果您不介意为基础架构支付额外费用,Heroku使安装和部署变得简单,只要您的需求不超过他们提供的内容(听起来他们不会)。如果您只使用5MB或者使用Amazon RDS之类的外部存储机制,Heroku可能实际上对您免费。
<强>更新强>
安装了Passenger and Rack(gem install rack
,gem install passenger
)后,您只需编辑Apache vhost以指向您的Sinatra应用程序的config.ru文件,并按照Passenger docs你会很高兴。
答案 1 :(得分:0)