首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP predis连接到Redis Sentinel

PHP predis连接到Redis Sentinel
EN

Stack Overflow用户
提问于 2016-06-30 16:07:34
回答 1查看 3.3K关注 0票数 0

我已经使用predis代码设置了一个新的PHP连接到redis服务器。我可以验证它是连接的,但我不知道如何简单地测试连接是否存在。

代码语言:javascript
复制
$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()似乎不起作用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-03 00:06:51

正如@drot所建议的:

代码语言:javascript
复制
$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'],
]);

// do this: 
$connection->connect();

if ($connection->isConnected() === true) {
    // undocumented-- I don't think this works?
    echo "connected";
} else {
    echo "failed"; // this is what gets echoed
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38128322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档