PHP Redis—pub/sub订阅超时
class Welcome
{
//订阅
public function subscribe()
{
$redis = new Redis();
$redis->connect(‘127.0.0.1’,6379);
function f($redis, $channel, $message)
{
switch ($channel) {
case ‘channel1’:
echo $message;
break;
}
die;
}
//用下面这行设置的时候没有起作用
// ini_set(‘default_socket_timeout’, ‘-1’);
$redis->subscribe(array(‘channel1’), ‘f’);
}
//发布
public function publish()
{
$redis = new Redis();
$redis->connect(‘127.0.0.1’,6379);
$redis = $this->libraryredis->instance();
$redis->publish(‘channel1’, ‘hello’);
}
}
当订阅的时候即:
$welcome = new Welcome();
$welcome->subscribe();
报错:
Fatal error: Uncaught exception ‘RedisException’ with message ‘read error on connection’
解决方法:
修改php.ini参数
default_socket_timeout -1
修改这个参数后 命令行 下运行 不会 超时,
但是浏览器运行会报504 gateway time-timeout
这是nginx 响应超时
这时需要设置nginx.conf参数
#这个值以秒为单位,必须大于或者等于0,值越大超时间隔越长
fastcgi_send_timeout 300;
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!
7. 本站有不少源码未能详细测试(解密),不能分辨部分源码是病毒还是误报,所以没有进行任何修改,大家使用前请进行甄别!
66源码网 » PHP Redis—pub/sub订阅超时