Wie überprüfe ich, ob der Redis-Server läuft?
Wenn es nicht läuft, möchte ich auf die Verwendung der Datenbank zurückgreifen.
Ich verwende das FuelPHP-Framework, daher bin ich offen für eine darauf basierende Lösung oder nur für Standard-PHP.
Wie überprüfe ich, ob der Redis-Server läuft?
Wenn es nicht läuft, möchte ich auf die Verwendung der Datenbank zurückgreifen.
Ich verwende das FuelPHP-Framework, daher bin ich offen für eine darauf basierende Lösung oder nur für Standard-PHP.
Sie können die Befehlszeile verwenden, um festzustellen, ob Redis ausgeführt wird:
redis-cli ping
du solltest zurückkommen
PONG
das zeigt an, dass redis betriebsbereit ist.
Es funktioniert nicht auf Redis-Clustern
– Manish Chauhan
13. Februar um 17:01 Uhr
shubham goyal
redis-cli -h host_url -p 6379 ping
Frank de Jonge
Was Sie tun können, ist zu versuchen, eine Instanz (\Redis::instance()) zu erhalten und wie folgt damit zu arbeiten:
try
{
$redis = \Redis::instance();
// Do something with Redis.
}
catch(\RedisException $e)
{
// Fall back to other db usage.
}
Aber vorzugsweise würden Sie wissen, ob Redis läuft oder nicht. Dies ist nur der Weg, um es im laufenden Betrieb zu erkennen.
Alle Antworten sind großartig,
aEine andere Möglichkeit kann die Überprüfung sein if default REDIS port is listening
dh Portnummer 6379
lsof -i:6379
Wenn Sie keine Ausgabe für den obigen Befehl erhalten, bedeutet dies, dass Redis nicht ausgeführt wird.
Sie können es auf diese Weise tun.
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
echo $redis->ping();
und dann prüfen, ob es druckt +PONG
die zeigen, dass redis-server läuft.
Kingston Fortune
Dies ist für diejenigen, die laufen Knoten-Redis.
const redis = require('redis');
const REDIS_PORT = process.env.REDIS_PORT || 6379
const client = redis.createClient(REDIS_PORT)
const connectRedis = async () => {
await client.PING().then(
async () => {
// what to run if the PING is successful, which also means the server is up.
console.log("server is running...")
},
async () => {
// what to run if the PING is unsuccessful, which also means the server is down.
console.log("server is not running, trying to connect...")
client.on('error', (err) => console.log('Redis Client Error', err));
await client.connect();
})
return
}