关于mssql_pconnect的问题 建议再增加一台Web服务器!或者使用Cache来减少对数据库的访问! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 建议不要用pconnect这种连接在页面运行完毕后仍然不会停止 手册中都建议要谨慎使用 对经常使用的内容做Cache是免不了的 另外mssql的CPU占用率本来就很如果是频繁insert,delete建议使用mysql 如果仍然有问题 就要考虑换一种替换DB更改数据策略了。 win2003跑PHP的效率比LINUX或FreeBSD要慢很多 $sql=new DB_mssql("select * from table"); $record=$sql->Record(); for($i=1;$i <=200;$i++){ 以下是数据处理 $sdr=new DB_mssql("select * from table2"); $record2=$sdr->Record(); for($m=1;$m <=300;$m++) { 以下是数据处理 $record2=$sdr->Record(); } 一次要处理表中所有记录?最好只取回需要的记录 MSSQL好像用 TOP 不要这样在循环中实例化很多的类 即使很快的销毁 分配内存 回收内存也是要时间的连接数据也不需要这样 LZ的代码要连接很多次数据库 估计时间都浪费在连接上了$db_link=mssql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("无法链接mssql");mssql_select_db(DB_DATABASE);$query1 = mssql_query(select * from table);for ($i=0;$i<200;$i++) //也不要这样写 上边说了 既然只需要200条记录那就只取回200条while($result = mssql_fetch_array($query1)){ $query2 = mssql_query(select * from table2); //逻辑处理}个人认为这样封装的类没什么实际效果反而会浪费资源 感谢楼上的帮助,小弟之前连接数据库也没有用类来封装,用的都是$db_link=mssql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("无法链接mssql"); mssql_select_db(DB_DATABASE); 最后在页面的部分使用 mssql_close(); 一个页面中有很多的数据库操作,存在循环查询里面套循环如果换这样的操作,是不是对数据库连接只有一次,还是怎么样,小弟对类的操作也不是很懂,这么大的连接,也只有在实际操作才能测试,平时做系统没有办法做这个测试的。如果采用封装的话,如何来关闭数据库。 如果我没有记错,pconnect是针对来自一个连接的吧?如果你并发数那么高,对不同的连接要求,即使用pconnect也会生出多个连接的吧?就比如我和你同时使用你的系统,怎么也得两个连接啊。你说的这种情况,在别的数据库中,是可以通过连接池来改善性能的。我没有搞过mssql,所以只能抛砖。 换PDO连接,自己的服务器干吗不用存储过程 动态页面的问题 ftp服务器哪一种比较好? php的面向对象和面向过程两种做法的效率对比 JS提取复选框的值!!! 符合条件的纪录以附件形式发送,该如何处理? 图片放入mysql数据库 气死我了,本姑娘以后再也不来PHP版回答问题了 怎么显示html和php? 关于onlick事件和javascript的问题 点击列头进行排序(表格中的数据为动态数据) 树形目录列表问题 zendstudio CVS问题..
$sql=new DB_mssql("select * from table");
$record=$sql->Record();
for($i=1;$i <=200;$i++){
以下是数据处理
$sdr=new DB_mssql("select * from table2");
$record2=$sdr->Record();
for($m=1;$m <=300;$m++)
{
以下是数据处理
$record2=$sdr->Record(); } 一次要处理表中所有记录?最好只取回需要的记录 MSSQL好像用 TOP 不要这样在循环中实例化很多的类 即使很快的销毁 分配内存 回收内存也是要时间的
连接数据也不需要这样 LZ的代码要连接很多次数据库 估计时间都浪费在连接上了$db_link=mssql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("无法链接mssql");
mssql_select_db(DB_DATABASE);$query1 = mssql_query(select * from table);for ($i=0;$i<200;$i++) //也不要这样写 上边说了 既然只需要200条记录那就只取回200条while($result = mssql_fetch_array($query1)){
$query2 = mssql_query(select * from table2);
//逻辑处理
}个人认为这样封装的类没什么实际效果反而会浪费资源
用的都是
$db_link=mssql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("无法链接mssql");
mssql_select_db(DB_DATABASE); 最后在页面的部分使用 mssql_close(); 一个页面中有很多的数据库操作,存在循环查询里面套循环如果换这样的操作,是不是对数据库连接只有一次,还是怎么样,小弟对类的操作也不是很懂,这么大的连接,也只有在实际操作才能测试,平时做系统没有办法做这个测试的。如果采用封装的话,如何来关闭数据库。