PHP性能優(yōu)化 產(chǎn)生高度優(yōu)化代碼
1.將PHP升級到最新版
提高性能的最簡單的方式是不斷升級、更新PHP版本。
2.使用分析器
網(wǎng)站運(yùn)行緩慢的原因頗多,Web應(yīng)用程序極其復(fù)雜,讓人撲朔迷離。而一種可能性在于PHP代碼本身。這個分析器可以幫助你快速找出造成瓶頸的代碼,提高網(wǎng)站運(yùn)行的總體性能。
Xdebug PHP extension提供了強(qiáng)大的功能,可以用來調(diào)試,也可以用來分析代碼。方便開發(fā)人員直接跟蹤腳本的執(zhí)行,實時查看綜合數(shù)據(jù)。還可以將這個數(shù)據(jù)導(dǎo)入到可視化的工具 KCachegrind中。
3.檢錯報告
PHP支持強(qiáng)大的檢錯功能,方便你實時檢查錯誤,從比較重要的錯誤到相對小的運(yùn)行提示??偣仓С?3種獨立的報告級別,你可以根據(jù)這些級別靈活匹配,生成用戶自定義的檢測報告。
4. 利用PHP的擴(kuò)展
一直以來,大家都在抱怨PHP內(nèi)容太過繁雜,最近幾年來開發(fā)人員作出了相應(yīng)的努力,移除了項目中的一些冗余特征。即便如此,可用庫以及其它擴(kuò)展的數(shù)量還是很可觀。甚至一些開發(fā)人員開始考慮實施自己的擴(kuò)展方案。
5.使用PHP加速器
一般情況下,PHP腳本被PHP引擎編譯后執(zhí)行,會被轉(zhuǎn)換成機(jī)器語言,也稱為操作碼。如果PHP腳本經(jīng)過反復(fù)編譯而得到相同的結(jié)果,那為什么不完全跳過編譯過程呢?
通過PHP加速器,你完全可以實現(xiàn)這一點,它緩存了PHP腳本編譯后的機(jī)器碼,允許代碼根據(jù)要求立即執(zhí)行,而不經(jīng)過繁瑣的編譯過程。
對PHP開發(fā)人員而言,目前提供了兩種可用的緩存方案,一種是APC(Alternative PHP Cache,可選PHP緩存),它是一個可以通過PEAR安裝的開源加速器。另一種流行的方案是Zend Server,它不僅提供了操作碼緩存技術(shù),也提供了相應(yīng)頁面的緩存工具。
6.通過內(nèi)存緩存來避免高成本操作
PHP通常在檢索和數(shù)據(jù)分析方面扮演著重要角色,這些操作可能會導(dǎo)致性能降低。實際上有些操作是完全沒有必要的,特別是從數(shù)據(jù)庫中反復(fù)檢索一些常用的靜態(tài)數(shù)據(jù)。不妨考慮一下短期使用 Memcached extension來緩存數(shù)據(jù)。Memcached的擴(kuò)展緩存與libMemcached庫協(xié)同工作,在RAM中緩存數(shù)據(jù),也允許用戶定義緩存的期限,有助于確保用戶信息的實時更新。
英文原文:http://www.phpbuilder.com/columns/php-performance-tips/Jason_Gilmore07122011.php3?page=1
相關(guān)文章
PHP IDE PHPStorm配置支持友好Laravel代碼提示方法
這篇文章主要介紹了PHP IDE PHPStorm配置支持友好Laravel代碼提示方法,重點配置已經(jīng)加紅提示,需要的朋友可以參考下2015-05-05PHP創(chuàng)建文件,并向文件中寫入數(shù)據(jù),覆蓋,追加的實現(xiàn)代碼
這篇文章主要介紹了PHP創(chuàng)建文件,并向文件中寫入數(shù)據(jù),覆蓋,追加的實現(xiàn)代碼,需要的朋友可以參考下2016-03-03PHP程序守護(hù)進(jìn)程化實現(xiàn)方法詳解
這篇文章主要介紹了PHP程序守護(hù)進(jìn)程化實現(xiàn)方法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-07-07php通過curl方式實現(xiàn)發(fā)送接收xml數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了php如何通過curl方式實現(xiàn)發(fā)送接收xml數(shù)據(jù),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-11-11