mysqlndMySQL的PHP驅(qū)動
PHP最近發(fā)布了5.3版本,在該版本當(dāng)中,提供了一個mysqlnd (MySQL Native Driver) 庫,用來訪問 MySQL數(shù)據(jù)庫,大大提升了PHP的數(shù)據(jù)庫訪問性能。
我們知道,PHP訪問MySQL數(shù)據(jù)庫,是通過MySQL數(shù)據(jù)庫的libmysql client庫,這個libmysql client是用C/C++編寫的,雖然一直以來PHP通過libmysql訪問數(shù)據(jù)庫性能也一直很好,但是卻無法利用PHP本身的很多特性。
mysqlnd提供了和Zend引擎高度的集成性,更加快速的執(zhí)行速度,更少的內(nèi)存 消耗,利用了PHP的Stream API,以及客戶段緩存機(jī)制。由于mysqlnd是透過 Zend引擎,因此提供提供更多高級特性,以及有效利用Zend進(jìn)行加速,原理圖如下:
從上圖可以看出來,libmysql是直接訪問數(shù)據(jù)庫的,而mysqlnd是通過Zend訪 問數(shù)據(jù)庫。
評論
圖片
表情
