2009-09-11 2 views
2

Если я использую классы Zend_Db для абстрагирования моих запросов из базы данных базы данных, имеет ли значение, какой драйвер mysql я использую, pdo_mysql vs. mysqli? Мое понимание pdo_mysql - это также предоставление абстракции, поэтому я предполагаю, что если я использую Zend_Db, то я бы не стал использовать дополнительные функции как часть mysqli в любом случае. Однако, один быстрее, чем другой с точки зрения производительности?pdo_mysql vs mysqli при использовании Zend_Db

ответ

4

Zend_Db, вообще говоря, основан на PDO и его различных адаптерах, например pdo_mysql.

Адаптер mysqli был разработан только для тех, кто использует серверы/хосты, которые не имеют PDO.

Я не думаю, что существует большая разница между pdo_mysql и mysqli, говоря о производительности; никогда не слышал ни о чем, так что даже если он есть, он не должен быть таким большим.


Вопрос, который я бы спросить: какие адаптеры могут использовать в вашем приложении?

Учитывая, что и pdo_mysql, и mysqli позволяют подключаться к базе данных MySQL, переход от одного к другому должен быть довольно простым: одна строка для изменения в файле config.ini вашего приложения; и все должно продолжаться ...

Personnaly, я бы, вероятно, пошел с адаптером PDO - и переключитесь на mysqli только в случае необходимости, в зависимости от наличия PDO на моем сервере.
Но это больше, потому что я обычно использую PDO, чем для любой другой «хорошей» причины ^^

3

Я не использовал классы Zend_Db, но в моих собственных (очень не-Строгом) тестах я нашел PDO для быть значительно быстрее, чем MySQLi.

http://www.robpoyntz.com/blog/?p=260