mysqli 比 mysql 速度_PHP的MySQL库之Pdo-Mysql与Mysqli性能对比

我们知道,LAMP(Linux + Apache + Mysql + PHP)是一种很常用的WEB服务器搭配。PHP中有很多MySQL库以方便我们的使用,比如说:Pdo-Mysql、Mysqli等等。那么究竟哪种方式性能最佳呢?本文我们对以上的连接方式作了性能对比试验:

1、建一个Mysql数据库,新建一张InnoDB表(参考某项目的核心表),然后用存储过程生成100万条数据。

2、搭一PHP环境,每次访问会随机查询数据库里的一条数据。

3、访问完成后验证查询结果的正确性。

Pdo-Mysql长连接 $dbh = new PDO(……,array(PDO::ATTR_PERSISTENT => true));

Pdo-Mysql短连接 $dbh = new PDO($host, $username, $password);

Mysqli $dbh = new mysqli($host,$username,$password,$dbname,$port);

Mysqli_connect $dbh = mysqli_connect($host,$username,$password,$dbname,$port);

自带 $dbh = mysql_connect($host,$username,$password);

结论:

1、使用Pdo-Mysql的长连接方式,性能最佳;

2、Mysqli的性能要优于使用Pdo-Mysql即时连接;

3、Pdo-Mysql即时连接性能同使用“自带”方式没有明显差异。

附,Pdo-Mysql与Mysqli的每秒事务数图:

21618class='fit-image' οnlοad='javascript:if(this.width>498)this.width=498;' onmousewheel = 'javascript:return big(this)' alt="PHP的MySQL库之Pdo-Mysql与Mysqli性能对比" src="http://images.51cto.com/files/uploadimg/20110805/1022460.jpg" />

附,对应时间段Web服务器的内存使用图:

95af8686fac65f5f371738f8cbcb7340.png

从上面两个图可以看出:

1. Pdo-Mysql之所以比Mysqli快,是由于Pdo-Mysql对数据库的操作比Mysqli要少;

2. 在Pdo-Mysql使用了长连接的测试中,Web服务器内存持续上涨。

(简单查了一下,是Aapche服务的httpd进程内存上涨,再跟进去模块名显示[匿名],后续再继续查一下原因)

那么单纯从性能角度看,Pdo-Mysql长连接性能最佳,但有何弊端还有待查证。

关于PHP中MySQL库的Pdo-Mysql与Mysqli性能对比的知识就介绍到这里了,希望本次的介绍能够对您有所收获!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值