可以有效提公升PHP系統效能的3個建議

2022-03-14 03:22:32 字數 1505 閱讀 2634

是時候使用像 codeigniter 這樣的mvc框架了. mvc框架並不強迫你寫物件導向的**. 它們僅將php**與html分離.

>>明確區分php和html**. 在團隊協作中有好處, 設計師和程式設計師可以同時工作.

>>物件導向設計的函式能讓你更容易維護

>>內建函式完成了很多任務作, 你不需要重複編寫

>>開發大的應用是必須的

>>很多建議, 技巧和hack已被框架實現了

關閉不相的錯誤報告. e_fatal 錯誤是很重要的. 

ini_set('display_errors', 1);

error_reporting(~e_warning & ~e_notice & ~e_strict);

注意:

1. 這個讓 web 伺服器記錄錯誤資訊的檔案 '/path/to/errors.txt' 應該讓 web 伺服器具有可寫的許可權。

2. 這個錯誤日誌檔案要獨立開來。否則所有的各種日誌,包括 apache web 伺服器的日誌、其它的錯誤日誌都將混雜在一起了。

3. 而且,為當前應用程式設定的錯誤日誌檔案應該只記錄了當前應用程式的錯誤日誌(有可能web 伺服器上還執行了其它的應用程式)。

4. 應用的錯誤日誌應該放在當前應用程式的某個目錄下,使得像/var/log 這樣的系統目錄不再需要去尋找。

5. 不要設定 error_reporting 為 0。這會使得所有發生的一切都不會被記錄。

另外,set_error_handler 應該被用於設定乙個使用者自定義的錯誤處理方法。例如,這個特有的功能,可以記錄所有的錯誤到乙個檔案中。

在開發環境的php.ini 中設定'display_errors=on'

在開發環境的 php.ini 裡,啟用 display_errors 的許可權是很重要的 (且不要依賴於 ini_set 的設定)。

這是因為任何編譯時發生的錯誤都不允許 ini_set 來執行,這會導致出現乙個空白頁面而沒有任何錯誤資訊被顯示出來。

同樣的,在 php.ini 中設定為了 on,但在**中把其設定為了 off,那麼錯誤發生時同樣顯示不出來。

在產品環境的 php.ini 中設定 'display_errors=off'

不要依賴於** init_set('display_errors' , 0); 因為如果編譯時**發生錯誤,那麼這條語句就不會被執行,而錯誤資訊就會馬上顯示給了客戶。

如果你已經在 windows 系統上進行開發了,那麼你可能需要試試在 linux 上做開發。我最喜歡的 linux 是 ubutu。雖然這只是可選的開發環境之一,但我仍然強烈地感覺到 linux 開發環境是乙個更好的開發環境

php 應用通常被部署到 linux (lamp)環境中。然而,在類似的開發環境能夠幫助乙個健壯的應用程式跑得更快。

在 ubuntu 系統上,通過安裝包管理器,大多數開發工具都可以非常容易地安裝到系統中。除此之外,僅通過少量的配置就可以設定好他們並跑起來。而最美妙的是,這些工具都是免費的!

系統效能提公升 AHCI

最近總是感覺自己的電腦越來越慢。於是想優化一下,可是普通的軟體優化已經達到了極限,精簡系統又不是我的風格。於是開始像硬體方面去找找問題。於是發現了個好東西 ahci。ahci serial ata advanced host controller inte ce 序列ata高階主控介面 高階主機控制...

報表系統效能提公升之預先計算

報表應用中當資料量較大或計算過程較複雜時,會導致報表資料來源準備過慢,從而影響報表效能。這時常常需要事先將報表需要的資料計算好,在呈現時直接引用即可,這樣使用者在訪問報表時就可以迅速地獲得響應。由於報表在訪問時還需要引數,顯然不可能把所有引數組合對應的報表資料來源都準備好,所以預先計算並不是最終的報...

高併發系統設計二 如何提公升系統效能

我們需要有度量的指標,有了資料才能明確目前存在的效能問題,也能夠用資料來評估效能優化的效果。響應時間控制在多久比較合適呢?從使用者體驗的角度來說 健康系統的 99 分位值的響應時間通常通知在 200 ms 之內,不超過 1s 的請求佔比要在 99.99 以上。1 提公升系統的處理核心數 增加系統的並...