由於sphinx尚未找到比較合適的教材,今天開始學習一下PHP性能優化。記得好久以前作過這麼一個功能,就是計算一級人脈下的全部推薦人的資金和,以及每一個推薦人的推薦人的資金和,就造成了一我的脈樹,當時的作法就是用了遞歸的方法來計算,其中不停的查詢數據庫,資源消耗至關的大,當一我的下面的直接推薦人和間接推薦人達到一二百個的時候,那就沒法運行下去,這確實讓人頭疼了好久。今天開始學習一下高手講解的PHP就頗有必要。數據庫
PHP的性能問題的解決方法性能優化
PHP語言級的性能優化併發
PHP周邊問題的性能優化函數
PHP語言自身分析優化工具
壓力測試工具性能
Apache Benchmark(AB)學習
簡介:AB是有Apache提供的壓力測試軟件測試
使用: ./ab -n1000 -c100 http://www.sina.com優化
-n 請求數 -c併發數 url目標壓力測試地址url
這句命令運行後,主要看兩個參數:
requests per second 101.65ms (每秒能夠接受幾個請求) 這個值儘量的高
time per request 9.838ms (每個請求耗時) 該值儘量的小 (第二個time per request)
PHP語言級性能優化
1. 優化點:少些代碼,多用PHP自身的能力
性能問題:自寫代碼冗餘較多,可讀性不強,性能低下。
爲何性能低?PHP代碼須要編譯解析爲底層語言,這一過程每次請求都會處理一遍,開銷大
好的方法:多使用PHP內置變量,常量,函數。
2. 優化點:PHP內置函數的性能優劣
狀況描述:PHP內置函數,之間依然存在快慢差別
好的建議:多去了解PHP內置函數的時間複雜度。
例如:isset()和array_key_exists()方法間的性能差別。isset()比array_key_exists()要快一些。