$psqlcon = pg_connect("host=".$host." port=".$port." dbname=multi user=".$usr." password=".$pwd); if (!$psqlcon) die("NO"); foreach($type as $typek=>$typev){ foreach($typev as $typevv){ $regsql = " select count(distinct(Id)) as cnt from userlog19_".$dayshort." where limitinfo @> "."'$jsonlimit'".';'; $reginfores = pg_query($psqlcon,$regsql); $actinfo = pg_fetch_assoc($actinfores); $testdata[$daylang][$typevv]['regnum'] = $reginfo['cnt']; } } pg_close($psqlcon); 网上查了一点资料说
试试 pg_pconnect, 该方法不需要pg_close
另外检查下PostgreSQL Server 的连接数设置是不是太低了, 配置可以的话, 可以尝试加大该配置
无论pg_connect还是pg_pconnect,一般来说都不是重点。
pg的连接数可以设置高一些,但更核心的是要看是不是太多查询都很慢,表是否设计不合理,是否要做缓存优化,是否需要pg集群等。