如何检查Redis服务器是否正在运行?
如果它没有运行,我想回退使用数据库。
我正在使用FuelPHP框架,所以我愿意接受基于此的解决方案,或者只是标准的PHP。
答案 0 :(得分:29)
您可以使用命令行来确定redis是否正在运行:
redis-cli ping
你应该回来
PONG
表示redis已启动并正在运行。
答案 1 :(得分:4)
你可以做的是尝试获取一个实例(\ Redis :: instance())并像这样使用它:
try
{
$redis = \Redis::instance();
// Do something with Redis.
}
catch(\RedisException $e)
{
// Fall back to other db usage.
}
但最好你知道redis是否正在运行。这只是在运行中检测它的方法。
答案 2 :(得分:0)
你可以这样做。
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
echo $redis->ping();
然后检查它是否打印+PONG
,显示redis-server正在运行。
答案 3 :(得分:0)
所有答案都很棒,
a另一种方法是检查if default REDIS port is listening
即端口号 6379
lsof -i:6379
如果你没有得到上述命令的任何输出,那么这意味着 redis 没有运行。