系统环境
windows2000 server
sqlserver 2000(装在另外一台机器上)
apache 1.3.X(换了apache2.2也一样)
php 5.2.8(以前用 4.X的时候很快)升级后发现连接数据库时变慢(2秒以上)
其他代码都很快
由于是本地局域网访问,基本没有延时,所以这两秒显得很明显。
==========
测试代码
这样就会慢(数据库本身没有问题如果用PHP4的话 感觉不到延时)
echo "hello";
$server="12.34.56.78";
$username="uu";
$password="pp";
$cnn=mssql_connect($server,$username,$password);
mssql_select_db('mydb',$cnn);
echo "hello";
phpinfo();
========
如果只是
echo "hello";
phpinfo();
就很快,所以我判断 连接数据库需要的时间变长了
windows2000 server
sqlserver 2000(装在另外一台机器上)
apache 1.3.X(换了apache2.2也一样)
php 5.2.8(以前用 4.X的时候很快)升级后发现连接数据库时变慢(2秒以上)
其他代码都很快
由于是本地局域网访问,基本没有延时,所以这两秒显得很明显。
==========
测试代码
这样就会慢(数据库本身没有问题如果用PHP4的话 感觉不到延时)
echo "hello";
$server="12.34.56.78";
$username="uu";
$password="pp";
$cnn=mssql_connect($server,$username,$password);
mssql_select_db('mydb',$cnn);
echo "hello";
phpinfo();
========
如果只是
echo "hello";
phpinfo();
就很快,所以我判断 连接数据库需要的时间变长了
PHP5的zend引擎和php4相比有很大变化,
你这种每请求一次,就连接一次的代码,速度不会快。建议不要随便升级服务器,最好能回到php4.x。
不太明白,怎样写可以减少连接数据库的次数啊?
另外 我在其他机器也测试了安装php5 后 并没有变慢,找不到原因啊
就是重复使用一次建立连接之后生成的实例
可以用singleton模式实现。