十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
需要的,如果你不执行断开的话,内存会一直保持这次连接,直到被数据库单方面断开为止
创新互联建站主营岱岳网站建设的网络公司,主营网站建设方案,重庆App定制开发,岱岳h5微信小程序开发搭建,岱岳网站营销推广欢迎岱岳等地区企业咨询
写反了,先断开连接,然后在退出
// 释放结果集
mysql_free_result($result);
// 关闭连接
mysql_close($link);
这是由于数据库连接数过多导致的,说明之前建立的连接你没有释放。
看到你的需求是实时获取数据库里面的内容,可以考虑使用内存数据库,这样返回的效率高,也会避免过多连接的错误。
可以使用redis和memcache来解决这个问题。代码如下,记得首先要安装redis,并且要安装php-redis扩展。
?php
$redis = new Redis();
$redis-connect('127.0.0.1', 6379);//serverip port
$redis-auth('mypassword');//my redis password
$redis -set( "test" , "Hello World");
echo $redis -get( "test");
一直连接属于长连接,网站加入并发请求数会很多,如果是一个长连接的话,你的网站加入并发请求数很多,也就是说同时有很多人来访问你的网站,并且每个访问者都需要查询一次mysql数据库的话,会很快把你的系统资源消耗完了。
每次连接都属于短链接,短链接就没有这个问题,每次查询完就马上关闭了,这样不容易消耗过多的系统资源。但是长连接也有个好处就是,频繁查询的时候,可以节省了多次建立TCP连接的时间
一般情况是本地网络问题,断开一下网络或者重启一下路由器即可解决!