Ich bin auf der Suche nach einer Verbindung zu einem Redis-Server über Unix-Domain-Socket mit hedis , wie in der Hack-Seite:
Verbindung über TCP oder Unix Domain Socket:
TCP-Sockets sind der Standardweg um eine Verbindung zu einem Redis-Server herzustellen. Für Verbindungen zu einem Server auf dem gleichen Maschine, Unix Domain Sockets bieten eine höhere Leistung als die Standard-TCP-Verbindung.
Von den Konstruktoren von ConnectInfo
sowie die defaultConnectInfo
, es scheint, dass wir das connectPort
ausfüllen sollten, da es den Typ PortID
hat, der einen Konstruktor namens UnixSocket
hat. Aber es zeigt nur UnixSocket
ist ein String
, ohne Details des Formats, etc.
So, wie man den connectPort
eingibt, um sich über den Unix-Domain-Socket zu verbinden? Danke.
UPDATE: Ich habe es ausprobiert und festgestellt, dass es nicht so schwer ist. Unten ist meine Hallo Welt.
%Vor%Ich bin überhaupt kein Haskell-Benutzer, und ich kann es nicht testen, aber ich würde sagen, Sie müssen nur den Pfad der Socket-Datei in dieser Zeichenfolge angeben.
Anstelle von:
%Vor%hättest du:
%Vor%Natürlich sollte /tmp/redis.sock in der serverseitigen Redis-Konfigurationsdatei unter Verwendung der folgenden Parameter deklariert werden:
%Vor%Bitte beachten Sie, dass Unix-Domain-Socket-Parameter standardmäßig auskommentiert sind.
Tags und Links haskell connection-string redis unix-domain-sockets