So implementieren Sie eine Remote-Verbindung für Redis unter Linux

So implementieren Sie eine Remote-Verbindung für Redis unter Linux

Nachdem Sie Redis unter Linux installiert haben, verwenden Sie Java zum Herstellen einer Verbindung. Der Java-Code lautet wie folgt

Paket com.wzj.demo.test;
 
importiere redis.clients.jedis.Jedis;
 
/**
 * Erstellt von wzj am 29.03.2018.
 */
öffentliche Klasse RedisJava
{
  öffentliche statische void main(String[] args)
  {
    //Mit dem lokalen Redis-Dienst Jedis verbinden jedis = new Jedis("192.168.3.45");
    System.out.println("Verbindung erfolgreich");
 
    //Redis-String-Daten festlegen jedis.set("runoobkey", "www.runoob.com");
 
    // Holen Sie die gespeicherten Daten und geben Sie sie aus System.out.println("Der in Redis gespeicherte String lautet: " + jedis.get("runoobkey"));
  }
}

Melden Sie den folgenden Fehler:

Ausnahme im Thread „main“ redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketException: Verbindung zurückgesetzt
	bei redis.clients.util.RedisInputStream.ensureFill(RedisInputStream.java:202)
	bei redis.clients.util.RedisInputStream.readByte(RedisInputStream.java:40)
	bei redis.clients.jedis.Protocol.process(Protocol.java:151)
	bei redis.clients.jedis.Protocol.read(Protocol.java:215)
	bei redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:340)
	bei redis.clients.jedis.Connection.getStatusCodeReply(Connection.java:239)
	bei redis.clients.jedis.Jedis.set(Jedis.java:121)
	bei com.wzj.demo.test.RedisJava.main(RedisJava.java:17)
	bei sun.reflect.NativeMethodAccessorImpl.invoke0 (native Methode)
	bei sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	bei sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	bei java.lang.reflect.Method.invoke(Method.java:498)
	bei com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Ursache: java.net.SocketException: Verbindung zurückgesetzt
	bei java.net.SocketInputStream.read(SocketInputStream.java:209)
	bei java.net.SocketInputStream.read(SocketInputStream.java:141)
	bei java.net.SocketInputStream.read(SocketInputStream.java:127)
	bei redis.clients.util.RedisInputStream.ensureFill(RedisInputStream.java:196)
	... 12 mehr

Verwenden Sie Telnet 192.168.3.45 6379 und stellen Sie fest, dass der Port blockiert ist.

Nach einer Online-Suche und -Analyse lautet der Grund: Redis erlaubt standardmäßig nur lokale Verbindungen und keine Verbindungen von anderen Maschinen. Die folgenden Änderungen müssen vorgenommen werden:

(1) Ändern Sie die Datei redis.conf und kommentieren Sie die Zeile bind 127.0.0.1 ::1 aus.

(2) Ändern Sie die Datei redis.conf und setzen Sie den geschützten Modus auf nein

(3) Beim Start müssen Sie die Datei redis.conf angeben und den Befehl ./src/redis-server redis.conf ausführen

Starten Sie den Test nach der Einrichtung neu und stellen Sie sicher, dass der Java-Code normal eine Verbindung herstellen kann.

Der obige Artikel zum Zulassen einer Remote-Verbindung für Redis unter Linux ist alles, was ich mit Ihnen teilen kann. Ich hoffe, er kann Ihnen als Referenz dienen, und ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden.

Das könnte Sie auch interessieren:
  • So ermöglichen Sie Remote-Hosts den Zugriff auf den Redis-Server
  • Detaillierte Erläuterung der Redis-Remote-Login-Verbindung
  • Detaillierte Schritte zum Aktivieren des Fernzugriffs in Redis 3.2
  • So installieren Sie Redis und die Redis-Erweiterung auf der Linux-Plattform

<<:  Tutorial zur manuellen Installation und Konfiguration von mysql8.0.11 winx64

>>:  Detaillierte Erläuterung der stillen Anmeldung beim WeChat-Applet und der Aufrechterhaltung des benutzerdefinierten Anmeldestatus

Artikel empfehlen

Detaillierte Erklärung der Verwendung und Funktion des MySQL-Cursors

[Verwendung und Funktion des MySQL-Cursors] Beisp...

Dynamische SQL-Anweisungsanalyse in Mybatis

Dieser Artikel stellt hauptsächlich die dynamisch...

Lösung für den Docker-Container, der nicht gestoppt und gelöscht werden kann

Suchen Sie die ID des laufenden Containers Docker...

Einführung in semantische HTML-Tags

In den letzten Jahren war DIV+CSS bei der Website-...

JavaScript zum Erreichen eines einfachen Bildwechsels

In diesem Artikel wird der spezifische Code für J...

Detaillierte Erklärung der Docker-Datenspeichervolumes

Standardmäßig erfolgt das Lesen und Schreiben von...

MySQL-Index für Anfänger

Vorwort Da die wichtigste Datenstruktur im MySQL-...

Prioritätsanalyse von und/oder Abfragen in MySQL

Dies ist ein Problem, das leicht übersehen wird. ...

Web-Frontend-Entwicklung CSS-bezogene Teamzusammenarbeit

Die Frontend-Entwicklungsabteilung wächst, die Mi...

Schritte zum Wiederherstellen von Code aus einem Docker-Container-Image

Manchmal geht der Code verloren und Sie müssen de...