php效能優化

2021-10-02 17:41:07 字數 2475 閱讀 9214

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

yk​e

ye​x

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 ...