主题:  这样做会不会影响服务器效率?

proof

职务:普通成员
等级:1
金币:0.0
发贴:30
注册:2005/4/19 22:50:32
#12005/5/21 20:27:33


子程序disp.php里包含一对“连接”、“关闭”数据库语句:

<?
  $dl_in=mysql_connect("localhost:3306","username","123456");   //打开MySQL连接
  mysql_select_db("starrysql",$dl_in);   //选择一个数据库

  …… (子程序功能略)

  mysql_close($dl_in);   //关闭MySQL连接
?>


  一个网页中频繁调用disp.php,达40多次:

<html>
<head><title>示例</title>
</head>
  ……
  <? require( "disp.php" ); ?>
  ……
  <? require( "disp.php" ); ?>
  ……
  <? require( "disp.php" ); ?>
  ……


</html>

  相应的就执行了40多次“连接”、“关闭”数据库操作。

  问:
  这样做会不会影响服务器效率?会不会影响网页打开速度?
  有没有必要把子程序中的“连接”、“关闭”语句提出来放在网页的头尾,使它只执行一次?

<html>
<head><title>示例</title>
</head>

  <?
   $dl_in=mysql_connect("localhost:3306","username","123456");   //打开MySQL连接
   mysql_select_db("starrysql",$dl_in);   //选择一个数据库
  ?>

    ……
    <? require( "disp.php" ); ?>   //删去了“连接”和“关闭”语句的disp.php
    ……
    <? require( "disp.php" ); ?>
    ……
    <? require( "disp.php" ); ?>
    ……

  <?
   mysql_close($dl_in);   //关闭MySQL连接
  ?>

</html>




proof

职务:普通成员
等级:1
金币:0.0
发贴:30
注册:2005/4/19 22:50:32
#22005/5/23 22:00:48
会不会影响速度?
$dl_in变量值在不同的程序段中,会不会引起bug?



ahxiao

职务:普通成员
等级:1
金币:10.0
发贴:304
注册:2001/6/8 16:34:26
#32005/5/25 17:24:36
很明显会。

能优化尽量优化



Mike

职务:版主
等级:6
金币:11.0
发贴:5148
注册:2004/6/10 14:12:22
#42005/5/28 9:44:45
会的,数据库和服务器都会



肤浅对白

职务:普通成员
等级:1
金币:1.0
发贴:163
注册:2002/2/24 9:37:51
#52005/11/9 23:20:57
那具体解决方法呢?没有哪位回答一下吗?



风雷

职务:普通成员
等级:1
金币:2.3
发贴:132
注册:2007/4/11 14:41:55
#62005/11/12 15:18:53
其实,不用非得用关闭数据库的。因为在你关闭一个网页后,数据库连接就会关闭。