系统环境 
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();
就很快,所以我判断 连接数据库需要的时间变长了

解决方案 »

  1.   

    sqlserver2000很老了,php5.2.8年轻很多。呵呵,搭配上有点问题吧,觉得慢就换数据库版本或PHP版本吧。当然,如果有条件,可以考虑用同样的PHP版本和数据库版本在其他机器上进行测试,看看是否有同样的问题。
      

  2.   

    换了其他机器 只进行了连接数据测试 速度很快 另外 发现了一个奇怪的想象 速度慢的机器 启动 apache时 会运行 java 其他的机器好像没发现,是不是这个原因?
      

  3.   

    数据库连接是比较耗时的处理,
    PHP5的zend引擎和php4相比有很大变化,
    你这种每请求一次,就连接一次的代码,速度不会快。建议不要随便升级服务器,最好能回到php4.x。
      

  4.   


    不太明白,怎样写可以减少连接数据库的次数啊?
    另外 我在其他机器也测试了安装php5 后 并没有变慢,找不到原因啊
      

  5.   


    就是重复使用一次建立连接之后生成的实例
    可以用singleton模式实现。
      

  6.   

    谢谢各位重装系统后好了,不知道为什么apache加载了java、