我目前有一些不同的项目可以在不同的redis实例上运行(考虑我在3个不同的asp.net应用程序中使用其redis服务器在每个服务器上的示例)。 我们被要求虚拟化并删除无用的实例,所以我想知道如果我只有一个redis服务器并且所有3个asp.net指向同一个redis实例会发生什么。
对于应用程序密钥,我认为没有问题,我可以在我自己的密钥前加上应用程序名称,例如" fi-agents"," ga-agents&#34 ;等等......但我想知道会话会议会发生什么?
据我所知read,前缀用作内部版本,最终用户无法将其用于分隔...它只是想使用{{ 3}}?
由于
答案 0 :(得分:1)
一般而言,除非有令人信服的理由,否则您不希望将不同的应用程序及其数据混合在同一个数据库中。是的,它确实降低了最初的运营成本,但它很快就会恶化为扩展和性能噩梦。我相信,这对任何数据库都是如此。
特别是使用Redis,技术上是 - 您可以使用密钥前缀或共享/编号数据库方法。我不确定你的意思是什么" auth"会话,但您可以对它们应用相同的方法。但是你真的不应该......因为Redis是一个单线程进程,你最终可能会阻止其他两个应用程序。由于Redis本身非常轻巧,只需启动专用服务器 - 每个应用程序一个 - 即使在必要的情况下也可以在同一个VM中。您可以在此处阅读有关您不想选择共享方法的更多背景信息:https://redislabs.com/blog/benchmark-shared-vs-dedicated-redis-instances