PHP-FPM 導致負載過高的排查方法 善用PHP慢執行日誌slow log
PHP有慢執行日誌slow log,可以定位指令碼執行超過指定的時間的頁面資訊,方便排查效能問題~
型別下面的輸出:
[11-Jul-2016 15:14:27] [pool www] pid 10292
script_filename = /home/xxxxxxxxxxxxxxxxx/web/public/index.php
[0x00007fe454c53410] imagecopyresampled() /home/xxxxxxxxxxxxxxxxx/Service/ImageHandle.php:140
[0x00007fe454c53300] imagescaling() /home/xxxxxxxxxxxxxxxxx/Service/ImageHandle.php:85
[0x00007fe454c53230] scaling() /home/xxxxxxxxxxxxxxxxx/Service/ImageHandle.php:39
[0x00007fe454c52fd0] outimage() /home/xxxxxxxxxxxxxxxxx/Service/Image.php:106
[0x00007fe454c52d10] upload() /home/xxxxxxxxxxxxxxxxx/Service/Image.php:222
[0x00007fe454c52ba0] add() /home/xxxxxxxxxxxxxxxxx/Common.php:48
[0x00007fff1e8d4bd0] uploadImageAction() unknown:0
[0x00007fe454c52a88] run() /home/xxxxxxxxxxxxxxxxx/Bootstrap.php:39
[0x00007fe454c52950] run() /home/xxxxxxxxxxxxxxxxx/index.php:19
從中可以發現,是上傳圖片導致cpu佔用,進而導致負載上升的。
滿日誌的開啟方法很簡單,改下php.ini就可以了:
5.6如下:
request_slowlog_timeout = 5s
slowlog = /usr/local/php/log/php-fpm-slowlog.log
型別下面的輸出:
[11-Jul-2016 15:14:27] [pool www] pid 10292
script_filename = /home/xxxxxxxxxxxxxxxxx/web/public/index.php
[0x00007fe454c53410] imagecopyresampled() /home/xxxxxxxxxxxxxxxxx/Service/ImageHandle.php:140
[0x00007fe454c53300] imagescaling() /home/xxxxxxxxxxxxxxxxx/Service/ImageHandle.php:85
[0x00007fe454c53230] scaling() /home/xxxxxxxxxxxxxxxxx/Service/ImageHandle.php:39
[0x00007fe454c52fd0] outimage() /home/xxxxxxxxxxxxxxxxx/Service/Image.php:106
[0x00007fe454c52d10] upload() /home/xxxxxxxxxxxxxxxxx/Service/Image.php:222
[0x00007fe454c52ba0] add() /home/xxxxxxxxxxxxxxxxx/Common.php:48
[0x00007fff1e8d4bd0] uploadImageAction() unknown:0
[0x00007fe454c52a88] run() /home/xxxxxxxxxxxxxxxxx/Bootstrap.php:39
[0x00007fe454c52950] run() /home/xxxxxxxxxxxxxxxxx/index.php:19
從中可以發現,是上傳圖片導致cpu佔用,進而導致負載上升的。
滿日誌的開啟方法很簡單,改下php.ini就可以了:
5.6如下:
request_slowlog_timeout = 5s
slowlog = /usr/local/php/log/php-fpm-slowlog.log
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14184018/viewspace-2121841/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql之 slow log 慢查詢日誌MySql
- MySQL Slow Query log(慢查詢日誌)MySql
- MySQL:慢SQL(slow_log)MySql
- ntpdate會導致mysql slow query log出現很大的query timeMySql
- 一次FGC導致CPU飆高的排查過程GC
- 記一次 PHP-FPM 可以建立慢日誌,但是卻不能寫入內容的折騰過程PHP
- 使用logrotate日誌切割工具輪循mysql的error.log/slow.log,遇到未生成壓縮檔案,測試執行卻正常logrotateMySqlError
- 故障分析 | 大量短時程式導致 cpu 負載過高案例一則負載
- 記php-fpm重啟導致的一個bugPHP
- 開啟PHP的錯誤log日誌PHP
- 定位apache慢請求神器—mod_log_slowApache
- PHP-FPM 的三種執行模式PHP模式
- 解Bug之路-記一次中介軟體導致的慢SQL排查過程SQL
- Oracle listener log 日誌分析方法Oracle
- 在被線上大量日誌輸出導致效能瓶頸,執行緒Block的坑執行緒BloC
- MySQL更新資料時,日誌(redo log、binlog)執行流程MySql
- Log日誌
- Linux下php-fpm程式過多導致記憶體耗盡問題解決LinuxPHP記憶體
- MySQL的general_log和slow_logMySql
- Python 日誌(Log)Python
- log 日誌原理
- 排查log4j不輸出日誌到檔案的問題
- mysql 鎖的慢日誌MySql
- 一次死鎖導致CPU異常飄高的整個故障排查過程
- win10怎麼看執行日誌 win10檢視執行日誌操作方法Win10
- 記一次,因表變數導致SQL執行效率變慢變數SQL
- 邏輯STANDBY負載高,應用緩慢的解決負載
- 免構建安裝 nginx php-fpm 快速執行 php 專案NginxPHP
- 排查錯誤日誌
- ajax非同步導致js方法順序執行不了非同步JS
- Linux C日誌logLinux
- Log 工具列印日誌
- 避免PHP-FPM記憶體洩漏導致記憶體耗盡PHP記憶體
- 系統執行緩慢,CPU 100%,以及Full GC次數過多問題的排查思路GC
- ELK收集mysql_slow.logMySql
- 【Mysql】三大日誌 redo log、bin log、undo logMySql
- 新的PHP高危漏洞可導致黑客執行遠端程式碼攻擊PHP黑客
- 【log4j2日誌框架】敏感字元過濾框架字元
- django開發-log日誌的配置Django