我试图理解 Passenger+Rails 应用程序中的 Redis 和 Sidekiq 配置,但遇到了一些缺乏理解的问题。我独立于我的 Rails 应用程序启动了 redis 服务器,而 Sidekiq 是我的 Rails 应用程序中的 gem。我同样启动它:(我不需要 sidekiq.yml 文件)
bundle exec sidekiq
以下是我的 sidekiq.rb 初始化程序:
require 'sidekiq'
require 'sidekiq-status'
Sidekiq.configure_client do |config|
config.client_middleware do |chain|
chain.add Sidekiq::Status::ClientMiddleware
end
end
Sidekiq.configure_server do |config|
config.server_middleware do |chain|
chain.add Sidekiq::Status::ServerMiddleware, expiration: 30.minutes
end
config.client_middleware do |chain|
chain.add Sidekiq::Status::ClientMiddleware
end
end
我参加了一些图书馆类(class),但无济于事。
我想了解 Sidekiq 在哪里配置它的 Redis 服务器详细信息。它默认为 localhost:6379
,但我不太确定如何。
另外,如果我希望将来使用 Memcached,我该如何更改?
最佳答案
来自 sidekiq 文档:
By default, Sidekiq tries to connect to Redis at localhost:6379
https://github.com/mperham/sidekiq/wiki/Using-Redis
您可以在初始化程序中更改端口:
Sidekiq.configure_server do |config|
config.redis = { url: 'redis://redis.example.com:7372/12' }
end
从外观上看,sidekiq 只能与 redis 一起使用
Sidekiq uses Redis to store all of its job and operational data.
关于ruby-on-rails - Rails 应用程序中的默认 Sidekiq Redis 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42083311/