java面试-生产环境服务器变慢,谈谈你的诊断思路
1、uptime:查询linux系统负载

11:16:16 系统当前时间
up 64 days, 19:23 从上次启动开始系统运行的时间
3 users 连接数量,同一用户多个连接的时候算多个
load average: 0.22, 0.25, 0.23 1分钟、5分钟、15分钟系统的平均负载值 三值相加/3*100% > 60% 系统负担压力大
2、top:实时显示系统中各个进程的资源占用情况

第2、3行为进程和CPU的信息
第4、5行为内存信息
看CPU、内存
load average(1分钟、5分钟、15分钟系统的平均负载值 三值相加/3*100% > 60% 系统负担压力大)
2、查看CPU:vmstat -n 2 3
procs
r:运行和等待CPU时间片的进程数,整个系统的运行队列不能超过总核数的2倍,否则代表压力很大
b:等待资源的进程数,比如等待磁盘IO,网络IO
CPU
us:用户进程消耗CPU时间百分比
sy:内核进程消耗CPU时间百分比 us+sy>80% 存在CPU不足

查看所有CPU核信息:mpstat -P ALL 2 【idle代表CPU空闲值,越高越好】
每个进程使用CPU的用量分解信息:pidstat -p 进程编号 -u 采用间隔秒数
3、查看内存:free
free/total>70% 内存充足
free/total<20% 内存不足

查看额外:pidstat -p 进程编号 -r 采用间隔秒数
4、查看磁盘剩余空间数:df -h

5、磁盘IO:iostat -xdk 2 3
util 一秒中有百分几的时间用于IO操作 接近100%磁盘带宽跑满,需要优化程序或增加磁盘

查看额外:pidstat -p 进程编号 -d 采用间隔秒数
6、网络IO:ifstat [默认本地没有,需下载]
wget http://gael.roualland.free.fr/ifstat/ifstat-1.1.tar.gz
tar -zxvf ifstat-1.1.tar.gz
cd ifstat-1.1
./configure #默认会安装到/usr/local/bin/目录中
make
make install
说明:安装sysstat命令:yum install sysstat
pidstat参数说明
-u:默认的参数,显示各个进程的cpu使用统计
-r:显示各个进程的内存使用统计
-d:显示各个进程的磁盘IO使用情况
-p:指定进程号
java面试-生产环境服务器变慢,谈谈你的诊断思路的更多相关文章
- 【Java面试】生产环境服务器变慢,如何诊断处理?
"生产环境服务器变慢?如何诊断处理" 这是最近一些工作5年以上的粉丝反馈给我的问题,他们去一线大厂面试,都被问到了这一类的问题. 今天给大家分享一下,面试过程中遇到这个问题,我们应 ...
- Linux性能分析:生产环境服务器变慢,诊断思路和性能评估
Linux性能分析:生产环境服务器变慢,诊断思路和性能评估 一.整机:top 二.CPU:vmstat 所有CPU核信息 每个进程使用CPU的用量分解信息 三.内存:free 四.硬盘:df 五.磁盘 ...
- java面试-生产环境出现CPU占用过高,谈谈你的分析思路和定位
思路:结合Linux和JDK命令一起分析 1.用top命令找出CPU占比最高的进程 2.ps -ef|grep java|grep -v grep 或者jps -l进一步定位,得知是怎样一个后台程序惹 ...
- IBM Thread and Monitor Dump Analyzer for Java解决生产环境中的性能问题
这个工具的使用和 HeapAnalyzer 一样,非常容易,同样提供了详细的 readme 文档,这里也简单举例如下: #/usr/java50/bin/java -Xmx1000m -jar jca ...
- java面试-CountDownLatch、CyclicBarrier、Semaphore谈谈你的理解
一.CountDownLatch 主要用来解决一个线程等待多个线程的场景,计数器不能循环利用 public class CountDownLatchDemo { public static void ...
- 利用ansible-playbook从测试环境获取tomcat中java项目新版本发布到生产环境
一.环境描述 安装有ansible的服务器:192.168.13.45 测试环境服务器:192.168.13.49 /home/app/api-tomcat/webapps/api.war为测试环境新 ...
- .NET C#微信公众号开发远程断点调试(本地远程调试生产环境代码)
最近在做微信公众号开发,由于之前没有接触过,突然发现调试不方便,不方便进行断点跟踪调试.因为微信那边绑定的服务器地址必须是公网地址,但是还是想进行断点调试(毕竟这样太方便了,程序有Bug,一步步断点跟 ...
- [转]跳板机Jumpserve的生产环境配置
6.跳板机Jumpserver] Jumpserver是国内一款开源的轻便的跳板机系统,他们的官网:http://www.jumpserver.org/ 使用这款软件意在提高公司内部登录生产环境服 ...
- Rails的静态资源管理(四)—— 生产环境的 Asset Pipeline
官方文档:http://guides.ruby-china.org/asset_pipeline.html http://guides.rubyonrails.org/asset_pipeline.h ...
随机推荐
- JavaScript Best Practice
JavaScript Best Practice Clean, maintainable, execute code
- flutter 使用Android studio编辑kt插件
使用android studio打开/example/android 文件即可
- React & Desktop App
React & Desktop App https://proton-native.js.org/#/ https://github.com/kusti8/proton-native
- 「NGK每日快讯」12.15日NGK公链第42期官方快讯!
- [转]hpp.h与.h的区别
原文网址:https://blog.csdn.net/liuzhanchen1987/article/details/7270005 hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实 ...
- JavaScript 中的执行上下文和执行栈
JavaScript - 原理系列 在日常开发中,每当我们接手一个现有项目后,我们总喜欢先去看看别人写的代码.每当我们看到别人写出很酷的代码的时候,我们总会感慨!写出这么优美而又简洁的代码的兄弟到 ...
- servlet+Http
Servlet:server applet 1.概念:运行在服务器端的小程序. *servlet就是一个接口,定义了Java类被服务器访问到(tomcat识别)的规则. *我们定义一个类,实现serv ...
- 微信小程序:日期组件picker的使用
1.页面代码 <view class="right"> <picker mode="date" value="{{material. ...
- 微信小程序:block标签
代码中存在block标签,但是渲染的时候会移除掉. 例子: 如果将view改为block: 当你要渲染某些数据时,如果不想额外的加一层外边的标签,此时可以使用block标签来进行占位.
- ubuntu上pyecharts V1版本环境搭建
1 背景 今天想用pyecharts画图,在新的环境下使用pip安装之后发现,导入pyecharts模块一直失败,报错如下. 图 1 导入pyecharts错误图 请注意:我这里使用的python版本 ...