2015-03-13 2 views
5

Ich versuche, ein einfaches Beispiel für das Lesen zu machen und aus azur redis Cache zu schreiben und ich erhalte diese StörungEs konnte keine Verbindung zu den Redis-Servern hergestellt werden. Um einen getrennten Multiplexer zu erstellen, deaktivieren Sie AbortOnConnectFail. SocketFailure auf PING

Eine Ausnahme vom Typ ‚StackExchange.Redis.RedisConnectionException‘ aufgetreten in StackExchange.Redis.dll wurde aber nicht im Benutzercode behandelt

Zusätzliche Informationen: Es konnte keine Verbindung zu den Redis-Servern hergestellt werden. Um einen getrennten Multiplexer zu erstellen, deaktivieren Sie AbortOnConnectFail. SocketFailure auf PING

Der Code ich verwende das ist, änderte ich dns und Passwort

// Get Connection instance 
ConnectionMultiplexer connection = ConnectionMultiplexer 
    .Connect("xx.redis.cache.windows.net,ssl=false,password=..."); 
// Get database 
IDatabase databaseCache = connection.GetDatabase(); 
// Add items 
databaseCache.StringSet("foo1", "1"); 
databaseCache.StringSet("foo2", "2"); 
// Add items with experation value 
databaseCache.StringSet("foo3", "3", TimeSpan.FromMinutes(20)); 

Stopwatch sw = new Stopwatch(); 

sw.Start(); 

// Get item value 
string foo1Value = databaseCache.StringGet("foo1"); 

sw.Stop(); 

Console.WriteLine("Elapsed={0}", sw.Elapsed); 
return View(); 
+0

Versuchen Sie auch, hier nach Lösung zu suchen: http://stackoverflow.com/questions/30906891/cant-reconnect-to-azure-redis-via-stackexchange-redis/32852922#32852922 – Nigrimmist

Antwort

6

Azure Redis Cache ermöglicht nur den SSL-Endpunkt in der Standardeinstellung. Am sichersten ist es, beim Aufruf von ConnectionMultiplexer.Connect() "ssl = true" zu setzen.

Alternativ können Sie das Azure-Portal verwenden, um den Nicht-SSL-Endpunkt in Ihrem Azure Redis Cache zu aktivieren. Ihr Kennwort und alle Daten werden dann jedoch im Klartext gesendet.

+0

Dies kann ein Duplikat von http sein : //stackoverflow.com/questions/28725437/azure-redis-unable-to-connect-to-redis-servers/29837033#29837033 – yantaq

5

Ich hatte genau die gleiche Ausnahme und es stellte sich heraus, Corporate Firewall sein, die 6379-Anschluss blockiert wird, 6380.

ich meine Testkonsolenanwendung in einer Umgebung außerhalb Firmennetzwerk kopiert und die Verbindung erfolgreich war. Wenn Redis Server im Internet läuft und Ihr Netzwerk sich hinter einer Firewall befindet, stellen Sie sicher, dass die Ports offen sind.

+0

als eine Bemerkung: 6380 Port für SSL. 6379 Port für Nicht-SSL-Verbindung. – Nigrimmist

Verwandte Themen