Resque / Sidekiq带有一个网络前端,这是一个Sinatra应用程序。
在Rails应用程序中安装它的方法是将其添加到路由(http://railscasts.com/episodes/366-sidekiq?view=asciicast):
mount Sidekiq::Web, at: "/sidekiq"
如何在Padrino应用程序中安装它? 像其他Rack应用程序一样在config.ru中映射它不起作用
map '/sidekiq' do
run Sidekiq::Web
end
答案 0 :(得分:2)
Padrino使用Padrino.mount,它希望应用程序响应依赖项和setup_application。这个hack(https://gist.github.com/1718723)允许您在Padrino应用程序中安装Sinatra应用程序
答案 1 :(得分:1)
Padrino应用程序是一个机架应用程序,在config.ru
你会看到
require ::File.dirname(__FILE__) + '/config/boot.rb'
run Padrino.application
您可以将其更改为使用Rack :: URLMap
require ::File.dirname(__FILE__) + '/config/boot.rb'
run Rack::URLMap.new("/sidekiq" => Sidekiq::Web.new, "/app" => Padrino.application.new)
答案 2 :(得分:0)
gem 'sidekiq'
添加到Gemfile bundle install
将以下行添加到config/boot.rb
Padrino.before_load do
Padrino.dependency_paths << Padrino.root('app/workers/*.rb')
end
将以下行添加到config/apps.rb
require 'sidekiq/web'
Padrino.mount('Sidekiq', app_class: 'Sidekiq::Web', app_root: Sidekiq::Web.root).to('/sidekiq')
在app/workers/
运行bundle exec sidekiq -r ./config/boot.rb