在使用redis之前我想检查它的可用性,如果redis不可用,我将使用mysql,如果redis可用我将使用它。如果我使用 predis 客户端,我该怎么做?
我的第一个方法是:
/**
* @return bool
*/
public function check(){
if(!@fsockopen ( $server['host'], $server['port'], $errno, $errstr, 3 )){
Debug::instance()->log( 'Redis connect error host: ' . $server['host'] . ' port: ' . $server['port'] );
return false;
}
return true;
}
但这是一个非常糟糕的主意,因为我占用了空闲套接字。现在我试图找到一种更好的方法。