首页 文章

没有连接可用于此操作:ZRANGEBYSCORE redis

提问于
浏览
1

我总是得到这个错误

asp.net核心2.0

StackExchange.Redis.StrongName 1.2.6

3 redis server 1 master 2 replica

只从副本读取并写入主人

像这样初始化连接管理器

public  static class X
    {
        static string connectionString;

        public static void InitializeConnectionString(string cnxString)
        {
            if (string.IsNullOrWhiteSpace(cnxString))
                throw new ArgumentNullException(nameof(cnxString));

            connectionString = cnxString;
        }

        private static readonly Lazy LazyConnection = new Lazy(() =>
        {
            var connection = ConnectionMultiplexer.Connect(connectionString);
            connection.PreserveAsyncOrder = false;
            return connection;

        });

        public static ConnectionMultiplexer SafeCoonect
        {
            get
            {
                return LazyConnection.Value;
            }
        }
      }

enter image description here

StackExchange.Redis.RedisConnectionException:没有可用于此操作的连接:ZRANGEBYSCORE xxxxx:day20171122:xxxx;无法连接到redis服务器; ConnectTimeout ---> System.AggregateException:发生一个或多个错误 . (无法连接到redis服务器; ConnectTimeout)(无法连接到redis服务器; ConnectTimeout)(无法连接到redis服务器; ConnectTimeout )(无法连接到redis服务器; ConnectTimeout)---> StackExchange.Redis.RedisConnectionException:无法连接到redis服务器; ConnectTimeout ---内部异常堆栈跟踪的结束--- ---内部异常堆栈跟踪的结束---在x:\ code中的StackExchange.Redis.ConnectionMultiplexer.ThrowFailed [T](TaskCompletionSource`1 source,Exception unthrownException) \ StackExchange.Redis \ StackExchange.Redis \ StackExchange \ Redis \ ConnectionMultiplexer.cs:line 2000 ---从抛出异常的上一个位置开始的堆栈跟踪---在系统的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()处.runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)在y.d__12.MoveNext()在x:\ x.cs:第163行---从前一个引发异常的位置的堆栈跟踪结束---在系统中 . System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)中的Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()位于x:\ x.cs中的y.d__8.MoveNext():第70行---来自之前的堆栈跟踪结束抛出异常的位置---在System.Runtime.ExceptionServi z. \ z \ z.cs中的z.d__14.MoveNext()处的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)中的ces.ExceptionDispatchInfo.Throw():第113行---来自之前的堆栈跟踪结束抛出异常的位置---在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()处于System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务),位于Microsoft.Extensions.Internal.ObjectMethodExecutorAwaitable的lambda_method(Closure,Object) . Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.d__12.MoveNext()中的Awaiter.GetResult()---抛出异常的前一个位置的堆栈跟踪结束---在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()在Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.d__10.MoveNext()的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)中 - 从前一个位置的堆栈跟踪结束,其中异常为t hrown ---位于Microsoft.AspNetCore.Mvc.Internal.ControllerAction.vv.Inter.ControllerActionInvoker.Next(状态和下一个,范围和范围)的Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)中的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() ,对象和状态,Boolean&isCompleted)在Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.d__14.MoveNext()---从抛出异常的上一个位置的堆栈跟踪结束---在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw ()处于Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.d__22.MoveNext()的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)---从抛出异常的上一个位置开始的堆栈跟踪结束--- at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next(State&nex)中的Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResourceExecutedContext context)中的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()在Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.d__17.MoveNext()中的范围和范围,对象和状态,布尔和isCompleted) - 从抛出异常的上一个位置的堆栈跟踪结束---在System.Runtime.ExceptionServices Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.d__15.MoveNext()中的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)中的.ExceptionDispatchInfo.Throw()---从抛出异常的上一个位置开始的堆栈跟踪结束---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at Microsoft.AspNetCore.Builder.RouterMiddleware.d__4.MoveNext()---来自先前位置的堆栈跟踪结束抛出异常的地方---在NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.d__2.MoveNext()的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()处 - - 从抛出异常的先前位置开始的堆栈跟踪结束---在NWebsec.AspNetCore.Middleware.Middleware的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()处.MiddlewareBase.d__2.MoveNext()---抛出异常的前一个位置的堆栈跟踪结束---在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Thro位于NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.d__2.MoveNext()的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)的w()---从抛出异常的上一个位置开始的堆栈跟踪结束--- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.d__6.MoveNext()---来自先前位置的堆栈跟踪结束抛出异常的地方---在Microsoft.AspNetCore.Session.SessionMiddleware.d__9.MoveNext()的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()处---从抛出异常的先前位置开始的堆栈跟踪结束---在Microsoft.AspNetCore.Session.SessionMiddleware.d_的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()处_9.MoveNext()---抛出异常的前一个位置的堆栈跟踪结束---在Microsoft的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()处.AspNetCore.Builder.RouterMiddleware.d__4.MoveNext()---抛出异常的前一个位置的堆栈跟踪结束---在System.Runtime.CompilerServices.TaskAwaiter的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()处 . Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.d__6.MoveNext()中的HandleNonSuccessAndDebuggerNotification(任务任务)

1 回答

相关问题