【问题标题】:Do i need for every instance of redis a new connection?我是否需要为每个 redis 实例建立一个新连接?
【发布时间】:2021-11-02 12:14:57
【问题描述】:

我可以只使用一个静态连接吗?

ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("localhost");

 IDatabase db = redis.GetDatabase(0);
 IDatabase db = redis.GetDatabase(1);
 IDatabase db = redis.GetDatabase(2);

【问题讨论】:

  • 你为什么不试试发布的代码?如果您尝试一下,您会发现它有效。

标签: c# redis stackexchange.redis


【解决方案1】:

来自the docs

StackExchange.Redis 中的中心对象是 StackExchange.Redis 命名空间中的 ConnectionMultiplexer 类;这是隐藏多个服务器细节的对象。因为 ConnectionMultiplexer 做了很多事情,它被设计为在调用者之间共享和重用。您不应该为每个操作创建一个 ConnectionMultiplexer。它是完全线程安全的,可以使用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多