【发布时间】:2013-01-22 09:58:30
【问题描述】:
我正在尝试在乘客/铁路生产环境中设置 Redis + Sidekiq,但遇到了一些混乱。
服务器上运行着许多小型应用程序。我确信这些应用中不止一个会利用 Sidekiq 提供的延迟处理。
我的第一个想法是使用 namespace option in Sidekiq 为每个 Rails 应用程序创建一个 namespace。
但后来我注意到redis.conf 中有一个databases 16 设置,我想知道它到底是做什么的。除了配置中的 cmets,我似乎找不到关于它的文档:
# Set the number of databases. The default database is DB 0, you can select
# a different one on a per-connection basis using SELECT <dbid> where
# dbid is a number between 0 and 'databases'-1
databases 16
所以,想知道 16 个“数据库”的默认/示例是否意味着我可以将 DB0 用于一个应用程序,将 DB1 用于另一个应用程序?!?我不认为这个假设是正确的,但我找不到更多信息:
Redis Cluster 不支持单机等多数据库 Redis版本,只有0号数据库,不允许SELECT。
希望有人能告诉我如何在同一台服务器上运行的各种 Rails 应用程序之间共享 Sidekiq 和 Redis。
【问题讨论】:
标签: ruby-on-rails redis passenger sidekiq