首页 > 系统相关 >查找linux下进程占用CPU过高的原因,以php-fpm为例

查找linux下进程占用CPU过高的原因,以php-fpm为例

时间:2022-12-06 10:03:41浏览次数:38  
标签:log 为例 fpm PID linux 进程 日志 php


很多时候,线上服务器的进程在某时间段内长时间占用CPU过高,为了优化,我们需要找出原因。

1、找出占用CPU最高的10个进程

ps aux | sort -k3nr | head -n 10

或查看占用内存最高的10个进程

ps aux | sort -k4nr | head -n 10

或者使用 top ,按 1 显示CPU列表,再按 shift+p 以CPU排序

top

  

2、对进程进行跟踪查看

查看进程打开的文件

lsof -p 进程PID

查看进程在处理的文件

ll /proc/进程PID/fd

查看进程的内存使用情况

pmap 进程PID

通过strace来跟踪进程的系统调用

strace -p 进程PID

当然我们也可以查看汇总的信息

strace -cp 进程PID

如果我们想跟踪某进程所有的系统调用,并统计调用时间,并导出为文件,可用如下命令

strace -o 导出文件 -T -tt -e trace=all -p 进程PID

  

3、查找php-fpm占用过高的原因

我们可以配置php-fpm的慢日志,查找是哪些文件导致php-fpm占用过高。

先找到php-fpm.conf文件位置

ps -ef|grep php

修改php-fpm.conf,并打开日志选项

;错误日志
error_log = log/php-fpm.log
;访问日志
access.log = log/$pool.access.log
;访问日志格式
access.format = "%R - %u %t \"%m %r%Q%q\" %s %f %{mili}d %{kilo}M %C%%"
;慢日志
slowlog = log/$pool.log.slow
;慢日志超时时间
request_slowlog_timeout = 3

注意:log 目录需要我们自已创建。

我们可以通过php-fpm的慢日志定位是哪个文件中哪行哪个方法慢,这样针对性的进行优化。

标签:log,为例,fpm,PID,linux,进程,日志,php
From: https://blog.51cto.com/u_15902893/5914580

相关文章

  • Linux进程和计划任务管理
    进程和计划任务管理文章目录进程和计划任务管理一、程序和进程的关系二、查看进程信息三、查看静态的进程统计信息1.ps-elf:2.pgrep命令查看进程信息3.查看进程信息四、......
  • 3.2.Linux-文本过滤与处理-comm指令:以行为单位比较两个已排序文件
    1.comm指令这项指令会一列列地比较两个已排序文件的差异,并将其结果显示出来,如果没有指定任何参数,则会把结果分成3列显示:第1列仅是在第1个文件中出现过的列,第2列......
  • linux history不记录历史命令
    目录linuxhistory不记录历史命令不记录历史命令执行使用history-d删除指定命令记录编辑~/.bash_history文件删除历史记录使用sed命令快速删除的技巧执行命令前加入空......
  • 【Linux】Jenkins之Pipeline的使用(五)
    概念是一套运行在Jenkins上的工作流框架,将原来独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排和可视化的工作。优势代码:Pipeline......
  • Linux的free命令与OOM的简单总结
    简介查看操作系统配置最关键的几个命令是lscpu查看CPU信息以及free查看内存信息.不过free信息有一个疑惑点他的free的值可能很小.会让搭建产生误解.这里简单说......
  • 从零开始实现一个Linux容器
    欢迎来到猫猫的C语言实验室喵!序言:文中所述源码是以MIT协议开源的,本文转载请注明原创作者为Moe-hacker,除此之外无其他要求。作者其实想将本文改名为《Re:从零开始的conta......
  • 浅谈Linux容器安全:chroot,capability与namespace技术
    作者只是个萌新,大佬轻喷。文章最终确定以时间顺序浅谈Linux容器安全原理。安全原理相关知识网上已经有很多了,咱通过几个具体攻击实例来讲讲它们的真实作用。演示均在猫......
  • Linux Debian11使用Podman安装DVWA靶场环境
    一、DVWA靶场环境简介​1.DVWA一个用来进行安全脆弱性鉴定的PHP/MySQLWeb应用,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助web开发者更好的理解web应用......
  • Linux究极服务部署
    @目录环境准备ftp服务测试验证nfs服务测试验证smb服务测试验证www服务测试验证mail服务测试验证dhcp服务测试验证环境准备第一步,将下载的虚拟机文件上传到VMware中点......
  • linux之vim
     概述复制粘贴是文本编辑最常用的功能,但是在vim中复制粘贴还是有点麻烦的,有一点学习成本。本文总结了使用vim复制粘贴的典型场景和使用方法,希望对读者有帮助。vim......