找出进程占用cpu高的原因。

进程占用cpu高,一般是由于进程长时间占用cpu,又没有主动释放占用。如果想主动释放cpu,可以调用sleep。在写程序的时候,尤其要注意while 等循环的地方。

找出php进程在执行那段代码

$sudo gdb -p 10434

(gdb) print (char *)executor_globals.active_op_array->filename

$13 = 0x2924118 "/home/admin/gearman_manager/pecl-manager.php"

(gdb) print executor_globals->current_execute_data->opline->lineno

$14 = 55

(gdb) c

Continuing.

^C

Program received signal SIGINT, Interrupt.

0x00000031d32306d0 in sigprocmask () from /lib64/libc.so.6

(gdb) print executor_globals->current_execute_data->opline->lineno

$15 = 71

(gdb) c

Continuing.

^C

Program received signal SIGINT, Interrupt.

0x00000000006250e1 in zend_hash_find ()

(gdb) print executor_globals->current_execute_data->opline->lineno

$16 = 53

如果对上面的命令有疑问,可以查看 当cpu飙升时,找出php中可能有问题的代码行

根据上面的信息,我们可以知道,cpu高时,正在执行/home/admin/gearman_manager/pecl-manager.php文件。并且正在执行53和71行附近的代码。

还可以通过strace进行调试

java 程序消耗 cpu 100% 查找方法

问题原因:由于HashMap是非线程安全的,在多线程访问时,造成死循环. 查找问题方法: 1. top 找出最耗费cpu的进程号 如:27377 2. top -p 27377 -H 找出此进程下的所 ...

java程序CPU 100%调试

前置 PID为进程id,NID为线程ID 步骤一.找到最耗CPU的进程 top 然后键入P,按CPU占用率排序(M是按内存排序) 步骤二.找到进程中最耗CPU的线程 top -Hp PID 步骤三.将 ...

Linux:CPU使用率100%排查方法

Linux作为一个多任务操作系统,将每个CPU的时间划分为很短的时间片,再通过调度器轮流分配给各个任务使用,因此造成多任务同时运行的错觉. CPU使用率 Linux作为一个多任务操作系统,将每个CPU ...

VxWorks操作系统shell命令与调试方法总结

VxWorks下的调试手段 主要介绍在Tornado集成开发环境下的调试方法,和利用支撑定位问题的步骤.思路. 1         Tornado的调试工具 嵌入式实时操作系统VxWorks和集成开发 ...

【转】STM32: 一种计算CPU使用率的方法及其实现原理

1  前言出于性能方面的考虑,有的时候,我们希望知道CPU的使用率为多少,进而判断此CPU的负载情况和对于当前运行环境是否足够“胜任”.本文将介绍一种计算CPU占有率的方法以及其实现原理. 2  移植 ...

转:Linux环境下段错误的产生原因及调试方法小结

源地址:http://www.cnblogs.com/panfeng412/archive/2011/11/06/2237857.html 补充:http://baike.baidu.com/link ...

Linux环境下段错误的产生原因及调试方法小结

转载自http://www.cnblogs.com/panfeng412/archive/2011/11/06/2237857.html 最近在Linux环境下做C语言项目,由于是在一个原有项目基础之 ...

[转]不正当使用HashMap导致cpu 100%的问题追究

以前项目中遇到类似业务,但使用的是CurrentHashMap,看到这篇文章,转载记录,警示自己. 以下内容转自: 转载自并发编程网 – ifeve.com(http://ifeve.com/hash ...

随机推荐

ios之JavaScript

初次接触java脚本,感觉java脚本so interesting!为什么呢?写javascript代码感觉就像是在记流水账,无拐弯抹角,一个字,就是"干",想怎么干就怎么干,哈哈 ...

javascript 正在加载中,请稍后效果实现

/*蒙版*/ .loading-mask { width: 100%; height: 100%; position: fixed; top:; left:; right:; bottom:; bac ...

Wijmo金融图表系列之等量图&成交量柱状图

Wijmo金融图表有很多类型,我们来一一介绍.之前介绍了平均K线图(Heikin-Ashi)和砖形图,现在我们来一起看看等量图和成交量柱状图. 图表 #3: 等量图(EquiVolume) 等量图和K ...

附带详细注释的log4net的app.config文件配置例子

<?xml version="1.0" encoding="utf-8" ?>

Hive静态分区表&amp&semi;动态分区表

静态分区表: 一级分区表: CREATE TABLE order_created_partition ( orderNumber STRING , event_time STRING ) PARTIT ...

【EF】 proxy

逐步解說:使用 WCF 序列化 POCO Proxy (Entity Framework) .NET Framework 4   POCO Proxy 型別無法由 Windows Communicat ...

页面中插入百度地图(使用百度地图API)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWF5dW4wNTE2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...

03&period;javabean

一.javabean简介 1,  作用:一个可重用组件,在jsp开发中可减少重复代码,使HTML与JAVA代码分离便于日后维护. 2,  javabean类要求: 所有类必须放在包中,且为public ...

linux中的颜色控制

\033[031m  xxx  \033[0m  ---------------------->中间的xxx部分显示为红色,不接后面的\033[0m,则以后显示的都是红色,\033表示开始和结束 ...

Ribbon

Ribbon是一个客户端的负载均衡器,它提供对大量的HTTP和TCP客户端的访问控制.Feign也是用的Ribbon,所以在这一章你也可以用@FeignClient Ribbon的一个核心概念是命名的 ...

运行php程序cpu 100%,php 应用 cpu 100% 调试方法相关推荐

  1. 打开bat文件闪退以及‘java‘不是内部或外部命令,也不是可运行的程序或批处理文件【本人亲测解决方法】

    最近在打开moa.bat文件的时候遇到了一个问题:双击打开之后一闪而过,什么都没有.(就是bat文件打不开,我还说这么多作甚) Windows系统 首先针对一闪而过提出解决方案: 鼠标右击bat文件, ...

  2. 运行应用程序报错“Resource temporarily unavailable”的解决方法

    运行应用程序时报错"Resource temporarily unavailable".根据这个错误可以在网上找到很多的原因及其解决方法,但我发现这些解决方法都不适用于我的情况.最 ...

  3. linux gdb 运行的程序,GDB(十)--调试正在运行的进程

    我编写了一个循环: long i; for (i = 0; i < 999999; i++) { mt.a += 1; sleep(1); } 把它编译成a.out,并在后台执行它:./a.ou ...

  4. 计算机能够运行的程序的大小不能超过内存,内存大小是影响电脑中运行的程序的速度...

    内存大小是影响电脑中运行的程序的速度 内存与 CPU 是属于桥梁关系,任何运行的程序都必须经过内存.只要计算机在运行中,CPU 就会把需要运算的数据调到内存中进行运算,当运算完成后 CPU 再将结果传 ...

  5. linux下bash脚本常用的十个技巧:显示执行脚本花费的时间,在脚本退出时杀死后台运行的程序,在脚本退出时跳出循环,读取命令行参数来决定循环次数

    文章目录 1.显示执行脚本花费的时间 2.在脚本退出时杀死后台运行的程序 3.在脚本退出时跳出循环 4.读取命令行参数来决定循环次数 1.显示执行脚本花费的时间 网址:bash - How to ge ...

  6. 成功解决‘nvidia-smi‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件

    成功解决'nvidia-smi' 不是内部或外部命令,也不是可运行的程序 或批处理文件 目录 解决问题 解决思路 解决方法 解决问题 'nvidia-smi' 不是内部或外部命令,也不是可运行的程序 ...

  7. 成功解决 python 不是内部或外部命令,也不是可运行的程序或批处理文件

    成功解决'python' 不是内部或外部命令,也不是可运行的程序或批处理文件 目录 解决问题 解决思路 解决方法 解决问题 'python' 不是内部或外部命令,也不是可运行的程序或批处理文件 解决思 ...

  8. 成功解决''g++' 不是内部或外部命令,也不是可运行的程序 或批处理文件

    成功解决''g++' 不是内部或外部命令,也不是可运行的程序 或批处理文件 目录 解决问题 解决思路 解决方法 解决问题 ''g++' 不是内部或外部命令,也不是可运行的程序 或批处理文件 解决思路 ...

  9. 后台运行linux程序,后台运行Linux程序的方法

    后台运行Linux程序,可以通过crontab设置,这种方法一般用来让一个程序定时运行,也可以通过./test &这样在程序末尾加上一个&使程序在后台运行. 编写代码,下面我将参考ht ...

最新文章

  1. 深度学习如何选择模型
  2. 服务器双系统切换快捷键,服务器双系统同时开
  3. 操作系统-并发:死锁和饥饿
  4. redis和Memcached的区别,都什么时候使用?
  5. VS2005~VS2022,那些年用过的VS,致敬,青春!
  6. python中函数的参数类型( 位置参数、关键字参数、默认值参数和可变长度参数)
  7. C语言 ##__VA_ARGS__ - C语言零基础入门教程
  8. 【python教程入门学习】迭代器、生成器和可迭代对象
  9. android环信退出登录,环信退出登陆的的问题
  10. Pop3_解决PKIX:unable to find valid certification path to requested target 的问题
  11. MATLAB表上作业法解决运输问题
  12. 大数据之项目需求及架构设计
  13. 数据仓库与数据挖掘 5
  14. 大气层整合傻瓜包_三国无双7大气层傻瓜包存档
  15. 如何在远程桌面无响应的情况下完成远程电脑重启
  16. 【人工智能】Fisher 线性分类器的设计与实现(QDU)
  17. Invalid bound statement (not found): com.xx.dao.TypeMapper.selectAll
  18. JAVA 日期推算---算法
  19. GPT分区-----Linux系统
  20. Ubuntu系统下U盘变成只读文件系统的处理办法

热门文章

  1. 微信小程序WXML语法介绍
  2. gephi导入边数据时,和节点数据不在一个工作区
  3. 花呗:已有5700万人正在使用花呗账单助手功能
  4. 华为正加大全球招聘 包括芯片工程师、软件开发员和AI研究员
  5. 虎牙李萌:网络视听内容的工业化生产正在提速
  6. 鸿蒙OS加持!华为MatePad2系列将搭载骁龙888/麒麟9000芯
  7. 二手机Q1行情报告:iPhone 11、华为Mate、P40(5G)等小幅涨价
  8. 苹果2021年WWDC大会可能继续采用线上方式举办
  9. 储粮过冬?消息称中芯国际大举向设备、零件商囤货
  10. 9月30日或成年内最难打车日 滴滴1亿补贴鼓励司机师傅多接单