SignalR cannot connect to Azure Redis on SSL

azure redis cache logs
azure redis cache is slow
azure redis cache issues
azure redis cache down
azure redis cache ttl
redis connection exception
azure cache for redis documentation
azure cache vs redis

I am currently hosting my redis cache server on Azure, and have signalR relying on it as the backbone using the following...

GlobalHost.DependencyResolver.UseRedis("Server",port,"password","eventKey");

This works find on port 6379 (non-SSL) but my chat app breaks when I try to connect to the SSL port (6380) of my Azure Redis server, and the hub is never started. What could be the cause of this issue? Or am I doing something wrong?

This is the error that appears on /signalr/connect in my browser net::ERR_CONNECTION_RESET


You can try this: GlobalHost.DependencyResolver.UseRedis(new RedisScaleoutConfiguration(connectionString, "YourServer"));

And connection string something like:

connectionString="yourNameHere.cache.windows.net,ssl=true,password=YourPasswordKey"

Make sure you are using SignalR built with StackExchange.Redis (latest is gratest ;)

How to Configure SignalR with Azure Redis Backplane · Issue , No idea how to add the Azure Redis cache connection string. without be accessed by SSL, so you won't be able to connect with ssl=False. I am currently hosting my redis cache server on Azure, and have signalR relying on it as the backbone using the following GlobalHost.DependencyResolver.UseRedis("Server",port,"password","eventK


I upgraded the signalr core library to version 2.2.3.0 and used the below syntax, works like a charm.

var redisServer = ConfigurationManager.AppSettings[Constants.RedisServer].ToString();

var redisServerPassword = ConfigurationManager.AppSettings[Constants.RedisServerPassword].ToString();

var connectionString = $"{redisServer},password={redisServerPassword},ssl=True,abortConnect=False";
GlobalHost.DependencyResolver.UseRedis(new RedisScaleoutConfiguration(connectionString, "APIIdentifierString"));

Troubleshoot Azure Cache for Redis timeouts, I am currently hosting my redis cache server on Azure, and have signalR relying on it as the backbone using the following GlobalHost.DependencyResolver. I think that by default Redis cache on Azure can only be accessed by SSL, so you won't be able to connect with ssl=False. Try to connect using SSL. If you still cannot connect you can pass a TextWriter to the ConnectionMultiplexer.Connect method which will be used by StackExchange to write logs which should help you figure out the problem.


In case anyone else hits the issue, it seems that the default connection string provided by the Azure portal contains abortConnect=False. Once I've removed that part, things started working for me.

SignalR Troubleshooting, Learn how to resolve common timeout issues with Azure Cache for timeout issues that occur when connecting to Azure Cache for Redis. If a synchronous call doesn't complete in this time, the StackExchange. Connect("cachename.​redis.cache.windows.net,abortConnect=false,ssl=true,password=. SignalR Scaleout with Redis - No SSL Support. SignalR Redis backplane is currently using Booksleeve and from what I can see here they are connecting to Redis using bare sockets. I don't know Redis but I assume the communication is not HTTP based but just TCP so you cannot use SSL directly.


How to configure Azure Cache for Redis, If there is no SignalR client available for your target platform, you cannot access the server's endpoint directly. Manually serializing data. SignalR  ASP.NET SignalR can be used to bring a new level of interactivity between servers and web or .NET clients. When hosted in Azure, SignalR applications can take advantage of the highly available, scalable, and performant environment that running in the cloud provides. Deploying a SignalR Web App to Azure App Service.


Quickstart: Use Azure Cache for Redis with .NET apps, Understand the default Redis configuration for Azure Cache for Redis and learn app development · Azure SignalR ServiceAdd real-time web functionalities easily By default, non-TLS/SSL access is disabled for new caches. The settings in this section cannot be changed using the StackExchange. Important For production use, a Redis backplane is recommended only when it runs in the same data center as the SignalR app. Otherwise, network latency degrades performance. If your SignalR app is running in the Azure cloud, we recommend Azure SignalR Service instead of a Redis backplane.


Troubleshoot Azure Cache for Redis server-side issues, In this quickstart, learn how to access Azure Cache for Redis from your . Azure SignalR ServiceAdd real-time web functionalities easily The name must start and end with a number or letter, and can't contain consecutive hyphens. ="<​cache-name>.redis.cache.windows.net,abortConnect=false,ssl=true  SignalR currently provides three backplanes: Azure Service Bus, Redis and SQL Server, we can use Redis to distribute messages across a SignalR application that is deployed on multiple instances, as you did, and your configuration is ok. This article:SignalR Scaleout with Redis is a detailed tutorial, you can refer to it.