设为首页 加入收藏

TOP

TIME_WAIT引起Cannot assign requested address报错(三)
2014-11-24 00:44:32 来源: 作者: 【 】 浏览:24
Tags:TIME_WAIT 引起 Cannot assign requested address 报错
379);
//sleep(1);
}
sleep(10);
然后查看状态:netstat -nat | grep 127.0.0.1:6379你会发现很多TIME_WAIT。
如果$num加大到40000或者,报错:Cannot assign requested address。
因此如果客户端(php)连接redis出现这个问题,说明你程序出现bug了。你某个循环里面实例化Redis了(即每次都new Redis),造成每一次循环都建立一个连接。
解决这个问题不是修改内核参数,而是把连接redis封装成单实例,确保在同一进程内,连接redis是唯一实例。
class Class_Redis {
private $_redis;
private static $_instance = null;
private function __construct() {
$this->_redis = new Redis();
$this->_redis->connect('127.0.0.1',6379);
}
public static function getInstance() {
if(self::$_instance === null) {
self::$_instance = new self();
}
return self::$_instance;
}
public function getRedis() {
return $this->_redis;
}
}
首页 上一页 1 2 3 下一页 尾页 3/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇sqlite关于insert效率 下一篇关于批量写入数据库的问题

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: