![](/img/trans.png)
[英]Can I use the same Redis (to go) instance on heroku for different concerns?
[英]Is a redis instance can only work for 1 project?
我正在使用带有Redis的Rails。
从Redis的介绍中,我发现了以下信息:
启动redis服务器:
redis-server
使用redis客户端:
> redis-cli
redis> set key value
OK
redis> get key
"value"
从样本中,我有一个问题:
Redis实例只能用于1个项目吗? 您可以看到,没有“数据库”或“集合”或类似的东西。 如果两个不同的项目使用相同的Redis,则它们可能会将相同的密钥更改为无效值。
因此,是否需要为不同的Rails项目创建具有不同端口的不同实例?
请记住,redis也有数据库(如果我没记错的话,其中有16个数据库)–它们只是没有命名,而是数字。 因此,例如,如果您使用redis-rb
进行连接,则将获得如下代码段:
$redis = Redis.new(:host => 'localhost', :port => 6379, :db => 5)
这将连接到数据库5。我也经常使用它来运行测试,因此我的测试不会干扰开发数据库。
如果在两个或多个应用程序之间共享单个Redis实例(或群集),则可能应该出于观察到的原因而对密钥进行命名空间,以便在这些应用程序之间合理地对其进行分区。 看一下redis-namespace gem,它提供了一个很好的Ruby接口。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.