1.php效能問題一般不會站整個專案效能問題的佔比的50%,效能優化專案不能僅限優化php.
壓力測試工具ab(apache benchmark) 簡介:
ab是apache提供的壓力測試軟體,在linux上安裝apache伺服器,一般自帶安裝了ab工具。
單獨安裝:sudo yum - y install httpd-toosl
檢視版本: ab -v
如何使用:
ab -n 100 -c 100
-n 每秒請求數
-c 每秒併發數
1.php語言級效能優化
2.php周邊問題的效能優化
3.php語言自身優化分析
優化建議:少寫**,多使用php語言自身能力
效能問題:自己寫的**冗餘較多,可讀性差,效能低
為什麼效能低?
每個請求過來php引擎zend會掃碼php檔案,解析php檔案,生成對應的opcode**段,然後執行opcode**段,然後相應請求,這一段解析到響應的步驟消耗事件,造成開銷很大。
2.php內建函式的效能優劣
情況描述: php內建函式之間依然存在快慢差異
好的建議:多了解php內建函式之間的時間複雜度
經過測試發現 isset(arr
[i])
效能比a
rray
keye
xist
s(arr[i]) 效能比array_key_exists(
arr[i]
)效能比
arra
yke
yex
ists
(arr,$i)高
方法建議:使用效能高的php內建函式
3.盡量不使用php魔法函式
經過測試發現:
使用php魔法函式時間開銷比不使用php魔法函式開銷大
建議:盡量不使用php魔法函式
4.禁用錯誤抑制符@
優化點:產生額外開銷的錯誤抑制符@
情況描述:
php提供錯誤抑制符@,只是方便懶人
@的實際邏輯:
在**開始前,和**開始後,增加opcode,忽略報錯
測試:在test.php
<?php @ file_get_contents(***)?>
檢視php@抑制符產生的錯誤**
5.合理使用記憶體
情況描述:
php記憶體有**機制 保底,但是也請小心使用記憶體
優化建議: 利用unset及時釋放不適用的記憶體(unset也存在不能登出釋放的情況)
6.盡量少使用正規表示式
情況描述:
正規表示式的回溯開銷大,沒有金剛鑽別攬瓷器活
優化建議:利用字串函式,實現相同的功能
7.避免在迴圈內部做運算
8、減少計算密集型業務
情況描述:
php不適合做密集型業務,比如大資料日誌分析等
為什麼?
php的語言特性決定不適合做大資料量運算
1.linux執行環境(linux或者apache)
2.檔案儲存系統(硬碟)
優化建議:減少php檔案類的使用,減少檔案對硬碟的讀寫
3.資料庫
4.快取
5.網路
優化建議:減少php發生網路請求
優化php效能
優化php效能的五個實用技巧 以下是五個優化技巧,熟練掌握後對於開發還是很有幫助的。1.對字串使用單引號 php 引擎允許使用單引號和雙引號來封裝字串變數,但是這個是有很大的差別的!使用雙引號的字串告訴 php 引擎首先去讀取字串內容,查詢其中的變數,並改為變數對應的值。一般來說字串是沒有變數的,所...
php 效能優化
1 使用 優化工具 zend optimizer,原理是通過檢測zend引擎產生的中間 並且優化他 來提高速度 安裝 zend optimizer,在php.ini裡新增 zend optimizer.optimization level 15 zend extension path to zend...
PHP效能優化
php效能優化 程式優化 1 最好是使用字串連線與單引號,而不是雙引號字串。2 不要隨便複製變數。3 盡量使用echo輸出字串。4 盡量不要使用連線符,輸出多個變數時可以用逗號分開。5 盡量使用switch代替if else。6 不做無畏的替換,先用strpos查詢再做替換,不要做替換效率高200 ...