【问题标题】:When use redis for kvs, Which is speedy to use 1 db or different ones将 redis 用于 kvs 时,使用 1 db 或不同的 db 会很快
【发布时间】:2016-07-13 22:36:58
【问题描述】:

我是一名使用 Rails 应用程序来使用 redis 的开发人员。

我现在正在使用 redis by ruby​​ 制作一些功能。

所以,我有一个快速使用 redis 1db 或多个的 quastion。 例如,我用 2 个 gem 做了一个 follow 2 个函数。

  • history_function:使用 redis 对象
  • counts_function:使用 sidekiq

哪个连接更好??

连接同一个数据库

Redis::Objects.redis = Redis.new (host: '127.0.0.1', port: 6379, db: 0)
Sidekiq.redis = Redis.new(host: '127.0.0.1', port: 6379, db: 0)

连接不同的db

Redis::Objects.redis = Redis.new (host: '127.0.0.1', port: 6379, db: 0)
Sidekiq.redis = Redis.new(host: '127.0.0.1', port: 6379, db: 1)

如果你喜欢,请告诉我答案的原因。 谢谢。

【问题讨论】:

  • 如果你连接同一个数据库,你会为每个数据库使用自己的命名空间。这意味着两个连接不会相互冲突。

标签: ruby-on-rails database redis


【解决方案1】:

Redis 的共享(编号)数据库仅提供单独的键空间 - 它们仍然由同一个进程管理。这意味着,就性能而言,它们与使用单个数据库相同。

当您想要实现并确保最大性能时,推荐的方法是为每个数据库使用一个专用的 Redis 实例。您可以通过以下方式了解更多信息:https://redislabs.com/blog/benchmark-shared-vs-dedicated-redis-instances

【讨论】:

  • 这正是我想要的信息!!感谢您和您的出色产品。
猜你喜欢
  • 2018-10-05
  • 2018-03-06
  • 1970-01-01
  • 2015-10-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-02
相关资源
最近更新 更多