所有应用程序的Redis实例?有哪些约定?

时间:2015-03-19 14:40:15

标签: redis

我假设了一些redis集群以实现高可用性和复制,但我从一个常规角度提出了一些问题。如果我有2个需要使用redis的应用程序,那么运行2个redis实例是否更好,它们完全独立于每个实例,每个实例都有自己的复制实例?或者只为所有应用程序提供1个redis实例?

redis是否允许我以一种方式存储密钥值,以便app1能够访问并获取它自己的密钥,app2可以访问并获取它自己的密钥同样的事实?

我希望我的问题很明确。谢谢你的帮助

2 个答案:

答案 0 :(得分:3)

除非您有充分的理由这样做(即共享数据),否则我建议您不要在应用程序之间共享Redis实例。为什么?仅仅因为共享会导致一个应用程序的性能受到其他应用程序活动的影响。

通过为每个应用程序配置专用的Redis实例,您将在该层中解耦您的应用程序,并且由于Redis非常轻量级,因此保留多个实例的开销可以忽略不计。

答案 1 :(得分:1)

由于Redis没有用户或访问控制,因此答案取决于每个应用程序与Redis的交互方式。一般来说,所有与Redis的客户端连接都可以访问所有数据库和所有密钥,因此只要两个应用程序都使用唯一的密钥名称,就可以共享同一个实例。

另一个主要考虑因素是每个应用程序从Redis服务器需要多少存储空间,如果两个应用程序在Redis中存储少量数据,则可以共享实例。