2017-01-13 2 views
0

Ich muss ein Konzept löschen. Ich habe zwei Redis-Server auf einer einzigen VM ausgeführt. Server # 1 verbindet sich über TCP, Server # 2 verbindet sich über einen UNIX-Socket. Ich bin dabei, den TCP-Server auch nach UNIX zu konvertieren.init.d Werte für separate Redis-Server-Instanzen

Ein Auszug aus dem init.d Skript für Server # 1:

DAEMON=/usr/bin/redis-server 
DAEMON_ARGS=/etc/redis/redis.conf 
NAME=redis-server 
DESC=redis-server 

RUNDIR=/var/run/redis 
PIDFILE=$RUNDIR/redis-server.pid 

Der vergleichbare Auszug aus dem init.d Skript für Server # 2 (die ihre eigene Konfiguration hat):

DAEMON=/usr/bin/redis-server 
DAEMON_ARGS=/etc/redis/redis-2.conf 
NAME=redis2-server 
DESC=redis2-server 

RUNDIR=/var/run/redis 
PIDFILE=$RUNDIR/redis2-server.pid 

Beide Server sind derzeit in Betrieb. Meine Frage ist: Wie wird DAEMON für beide Server gleich gehalten? Warum wurde keine separate ausführbare Datei benötigt?

Ich konfigurierte die zwei Server mithilfe von Config aus verschiedenen Internetforen. Während es funktioniert, habe ich die Bedeutung des Werts DAEMON nicht verstanden, da es für beide Serverinstanzen gleich bleibt. Liegt es daran, dass die ausführbare Datei verschiedene Konfigurationsdateien enthält und das gleiche DAEMON mehrere Server-Instanzen verarbeiten kann? Als Anfänger hätte ich gerne eine Expertenmeinung dazu. Danke im Voraus.

Antwort

0

Offenes Terminal (oder cmd). Jetzt öffne es wieder. Sie haben zwei Kopien geöffnet, aber beide verwenden dieselbe ausführbare Datei.

Sie tun das gleiche mit Redis: DAEMON sagt nur, wo das Programm zu finden ist, und da Sie gerne die gleiche Version von redis für beide verwenden, können Sie den gleichen Pfad für beide DAEMON-Werte verwenden, Für jede Instanz ist eine eigene ID in der PIDFILE gespeichert, weshalb sie unterschiedliche Pfade sein müssen oder sich gegenseitig stören.

Verwandte Themen