我已经读过,为了连接到 Azure Redis 缓存,最好遵循这种做法:
private static ConnectionMultiplexer Connection { get { return LazyConnection.Value; } }
private static readonly Lazy<ConnectionMultiplexer> LazyConnection =
new Lazy<ConnectionMultiplexer>(
() =>
{
return
ConnectionMultiplexer.Connect(connStinrg);
});
根据 Azure Redis 文档:
与 Azure Redis 缓存的连接由 ConnectionMultiplexer 类管理。此类旨在在您的客户端应用程序中共享和重用,并且不需要在每个操作的基础上创建。
那么在我的 ASP.net MVC 应用程序中共享 ConnectionMultiplexer 的最佳实践是什么?应该在 Global.asax 中调用它,还是应该在每个控制器中初始化一次,或者 smth。别的 ?
另外我有一个服务,它的任务是与应用程序通信,所以如果我想在服务内与 Redis 通信,我应该将 ConnectionMultiplexer 的实例从控制器发送到服务,还是应该在我的所有服务中初始化它,或者?
如您所见,我在这里有点迷路,所以请帮忙!