我的 Rails 应用程序有问题。
基于 Ruby on Rails 和 Sidekiq、Redis 并部署在 Heroku 上的应用程序。我不知道为什么我的工人不在 Heroku 上工作。我认为我的设置有问题。
配置/初始化程序/sidekiq.rb
Sidekiq.configure_server do |config|
config.redis = { url: 'redis://localhost:6379/0' }
schedule_file = "config/sidekiq.yml"
if File.exists?(schedule_file)
Sidekiq::Cron::Job.load_from_hash YAML.load_file(schedule_file)
end
end
Sidekiq.configure_client do |config|
config.redis = { url: 'redis://localhost:6379/0' }
end
Run Code Online (Sandbox Code Playgroud)
工人/my_worker.rb
class MyWorker
include Sidekiq::Worker
def perform
......
end
end
Run Code Online (Sandbox Code Playgroud)
配置/sidekiq.yml
my_photos:
cron: "30 3 */2 * *"
class: "MyWorker"
queue: default
Run Code Online (Sandbox Code Playgroud)
配置文件
web: bundle exec rails server -p $PORT
worker: bundle exec sidekiq -e production
Run Code Online (Sandbox Code Playgroud)
application.rb …