我使用documented代码与predis
服务器建立了新的PHP redis
连接。我可以验证它连接好了,但我不知道如何简单地测试连接是否存在。
$options = array(
'scheme' => 'tcp',
'host' => '127.0.0.1',
'port' => $port,
'instance' => 'myinstance',
'timeout' => '0.100' // possibly add this to connections?
);
$sentinels = [
"tcp://{$options['host']}:{$options['port']}?timeout={$options['timeout']}",
];
$connection = new Predis\Client($sentinels, [
'replication' => 'sentinel',
'service' => $options['instance'],
]);
if ($connection->isConnected() === true) {
// undocumented-- I don't think this works?
echo "connected";
} else {
echo "failed"; // this is what gets echoed
}
有没有一种方法可以测试连接是否缺少实际的读/写功能? isConnected()
似乎不起作用。
答案 0 :(得分:0)
@drot建议:
$ options = array(
'scheme'=>'tcp',
'主机'=>'127.0.0.1',
'端口'=> $端口,
'instance'=>'myinstance',
'timeout'=>'0.100'//可能将其添加到连接中吗?
);
$ sentinels = [
“ tcp:// {$ options ['host']}:{$ options ['port']}?timeout = {$ options ['timeout']}”,
];
$ connection =新的Predis \ Client($ sentinels,[
'复制'=>'哨兵',
'service'=> $ options ['instance'],
]);
// 做这个:
$ connection-> connect();
如果($ connection-> isConnected()=== true){
//未记录-我认为这行不通吗?
回显“已连接”;
}其他{
回声“失败”; //这就是被呼应的东西
}