我有一个Sinatra网络应用程序。我正在使用Resque和Resque Scheduler,现在我正在考虑添加Resque Web(希望)看看我的Resque队列是什么样的。现在这是我的问题:官方Resque Web是一个Rails应用程序。我不知道如何在Sinatra中使用Rails应用程序,或者甚至可能使用它。
所以我的问题:在我的Sinatra应用程序中实现Resque Web的最佳方法是什么?我可以使用Sinatra内部的rails应用程序吗?我看到一个人说你应该有一个运行Rails的应用程序的单独部分,但这看起来真的很讨厌。有没有更好的方法呢?
谢谢!
答案 0 :(得分:2)
我没有使用过ResqueWeb,但是Rails和Sinatra都是Rack兼容的框架,因此它们应该能够相互运行或者并行运行。
http://www.sinatrarb.com/intro.html#Rack%20Middleware
## my-amazing-app.rb
use MySlightlyLessAmazingRailsApp
# rest of Sinatra stuff…
或
# config.ru
map "/" do
# easiest to mount Sinatra apps this way if using the modular style
run MyAmazingSinatraApp
end
map "/resque" do
run MySlightlyLessAmazingRailsApp
end
我不知道你是如何使用Rails做的,也许试试这个链接http://m.onkey.org/rails-meets-sinatra或者这个:
RailsApp::Application.routes.draw do
mount MyAmazingApp, :at => "/more-amazed"
# rest of the rails routes
end
答案 1 :(得分:2)
以下是我要找的内容:http://asciicasts.com/episodes/271-resque
Resque-web可以独立运行,从命令行运行。所以每当我启动我的服务器实例时,我只是用shell命令启动它。不完全是我正在寻找的,但它确实有效!
感谢所有建议。