1.CPU占用最多的前10个进程 2.内存消耗最多的前10个进程 3.虚拟内存使用最多的前10个进程 4.也可以试试 5.看看几个参数含义 ...
分类:
系统相关 时间:
2019-03-09 23:30:41
阅读次数:
219
用于快速排查Java的CPU性能问题(top us值过高),自动查出运行的Java进程中消耗CPU多的线程,并打印出其线程栈,从而确定导致性能问题的方法调用。目前只支持Linux。原因是Mac、Windows的ps命令不支持列出进程的线程id,更多信息参见#33,欢迎提供解法。 PS,如何操作可以参 ...
分类:
编程语言 时间:
2019-03-06 16:35:44
阅读次数:
172
redis采用的是定期删除+惰性删除策略。 为什么不用定时删除策略? 定时删除,用一个定时器来负责监视key,过期则自动删除。虽然内存及时释放,但是十分消耗CPU资源。在大并发请求下,CPU要将时间应用在处理请求,而不是删除key,因此没有采用这一策略. 定期删除+惰性删除是如何工作的呢? 定期删除... ...
分类:
其他好文 时间:
2019-02-28 00:53:28
阅读次数:
156
背景 目前项目组日志组件存在以下问题: 1 日志文件每写一次日志就打开关闭一次,存在性能浪费 2 日志里面获取时间需要调用localtime、stat,在频繁调用时该函数消耗cpu比较多 3 日志组件获取环境变量时未判断是否成功,如果环境变量没设置会引起程序core 4 日志组件在写日志时,先初始化 ...
分类:
其他好文 时间:
2019-02-10 12:21:51
阅读次数:
235
生产服务器上部署了几个java程序,突然出现了CPU100%的异常告警,你如何定位出问题呢? 下面给出两种系统环节下的排查步骤,都是一模一样的,只是命令稍有区别! 查消耗cpu最高的进程Pid 根据Pid查出消耗cpu最高的线程号 根据线程号查出对应的java线程,进行处理。 准备一行死循环代码 怎 ...
分类:
其他好文 时间:
2019-01-26 15:23:48
阅读次数:
218
一.原子操作 syn基于阻塞的锁的机制,1、被阻塞的线程优先级很高,2、拿到锁的线程一直不释放锁怎么办?3、大量的竞争,消耗cpu,同时带来死锁或者其他安全。 CAS的原理 CAS(Compare And Swap),指令级别保证这是一个原子操作 三个运算符: 一个内存地址V,一个期望的值A,一个新 ...
分类:
编程语言 时间:
2019-01-23 01:23:56
阅读次数:
247
对象除了生死之外,还有其他状态吗?对象真正的死亡,难道只经历一次简单的判定?如何在垂死的边缘“拯救”一个将死对象?判断对象的生死存活都有那些算法?本文带你一起找到这些答案。 在正式开始之前,我们先来了解一下垃圾回收。 GC介绍 **GC:**Garbage Collection,中文翻译为垃圾回收。 ...
分类:
编程语言 时间:
2019-01-21 19:30:50
阅读次数:
187
原文地址:https://www.cnblogs.com/qiumingcheng/p/6718764.html dea打开大文件的时候,会导致cpu利用率变得特别高,我这边八核i7的配置下,cpu依然飙到了600%~700%,这个时候就需要修改idea的配置(下面以Ubuntu为例)。 1.进入到 ...
分类:
其他好文 时间:
2019-01-16 19:21:37
阅读次数:
182
python因为其全局解释器锁GIL而无法通过线程实现真正的平行计算。这个论断我们不展开,但是有个概念我们要说明,IO密集型 vs. 计算密集型。 IO密集型:读取文件,读取网络套接字频繁。 计算密集型:大量消耗CPU的数学与逻辑运算,也就是我们这里说的平行计算。 而concurrent.futur ...
分类:
编程语言 时间:
2018-12-18 19:55:05
阅读次数:
189
一、什么是io? i就是input,输入,o就是output,输出,合起来就是以流为基本的输入输出。 二、传统的io 传统的服务器端同步阻塞I/O处理(也就是BIO,Blocking I/O): 当客户端有请求到服务端的时候,服务端就会开启一个线程进行处理,当有多个请求进入时,就会开启多个线程分别处 ...
分类:
其他好文 时间:
2018-12-10 15:43:28
阅读次数:
212