----------iostat ------------------
iostat -d -k -x 2 100
rrqm/s:每秒这个设备相关的读取请求有多少被Merge了(当系统调用需要读取数据的 时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge);wrqm/s:每秒这个 设备相关的写入请求有多少被Merge了。
r/s:每秒响应的读取请求数;w/s:每秒响应的写入请求数;rkB/s:每秒读取的数据量;wkB/s:每秒写入的数据量
await:每一个IO请求的处理的平均时间(单位是微秒)。这里可以理解为IO的响应时 间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。
%util:在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计 间隔1秒,该 设备有0.8秒在处理IO,而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度。一般地,如果该参数是100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util是100%,因 为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。
------------------TOP--------------------
由于Oracle大多运行在Linux系统下,所以了解一些相关知识还是很有必要的,本文将主要梳理汇总在Linux性能监控方面常用到的一些命令。
TOP
TOP命令提供了对系统处理器的实时状态监视信息,它会显示CPU使用量、内存使用量、交换内存、缓存大小、缓冲区大小、流程PID、用户、命令等。
TOP信息可以分为两部分,光标上面部份显示关于系统整体性能,光标下面部份显示各进程信息,光标所在处是用来输入操作命令的。
系统整体性能统计信息
第一行:top - 12:38:33 up 50 days, 23:15, 7 users, load average: 60.58, 61.14, 61.22
详解(基础信息):
12:38:33(系统当前时间)、up 50 days(系统开机至今时间)、7 users(当前登录系统用户数)、load average: 60.58, 61.14, 61.22(系统1、5、15分钟平均活跃进程数,如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了)。
第二行:Tasks: 203 total, 60 running, 139 sleeping, 4 stopped, 0 zombie
详解(进程信息):
203 total(系统当前进程数)、60 running(运行中进程数)、139 sleeping(休眠进程数)、4 stopped(停止进程数)、0 zombie(僵尸进程数)。
第三行:Cpu(s) : 27.0%us, 33.0%sy, 0.0%ni, 40.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
详解(CPU信息):
27.0%us(用户空间占用CPU的百分比)、33.0%sy(内核空间占用CPU的百分比)、0.0%ni(改变过优先级的进程占用CPU的百分比)、40.0%id(空闲CPU百分比)、0.0%wa(IO等待占用CPU的百分比)、0.0%hi(硬中断占用CPU的百分比)、0.0%si(软中断占用CPU的百分比)、0.0%st(不知道)。
第四行:Mem: 1939780k total, 1375280k used, 564500k free, 109680k buffers
详解(内存信息):
1939780k total(物理内存总量)、1375280k used(已用物理内存量)、564500k free(空闲物理内存量)、109680k buffers(用于内核缓存的物理内存量)。
第五行:Swap: 4401800k total, 497456k used, 3904344k free, 848712k cached
详解(交换分区):
4401800k total(交换区总量)、497456k used(已用交换区总量)、3904344k free(空闲交换区总量)848712k cached(缓冲的交换区总量)。
交换分区类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。缓冲交换区cached作用原理为,内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,该数值即为这些内容已存在于内存中的交换区的大小,相应的内存再次被换出时可不必再对交换区写入。
第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。如果出于习惯去计算可用内存数,这里有个近似的计算公式:第四行的free+第四行的buffers+第五行的cached。对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。
进程信息
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4338 oracle 25 0 627m 209m 207m R 0 11.0 297:14.76 oracle
详解:
PID(进程ID)、USER(进程所有者)、PR(优先级)、NI(nice值,负值表示高优先级,正值表示低优先级)、VIRT(进程占用的虚拟内存总量,单位kb)、RES(进程占用的物理内存)、SHR(进程使用的共享内存)、S(进程状态,D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程)、%CPU(上次更新到现在的CPU时间占用百分比)、%MEM(进程使用的物理内存百分比)、TIME+(进程使用的CPU时间总计,单位1/100秒)、COMMAND(进程名称,命令名或命令行)。
进程信息排序:
默认进入top时,各进程是按照CPU的占用量来排序的。可以通过键盘指令改变排序字段,b(行加亮效果打开/关闭)、x(列加亮效果打开/关闭)、shift + >或shift + <(向右或左改变排序列)。
控制进程信息显示字段:
敲击f键,进入显示字段编辑视图,进程字段前有*且前标字母是大写的表示已显示的,没有*且小写的是未显示的,可以通过敲击进程前标字母来控制字段是否显示。
交互命令
q:退出top命令
<Space>:立即刷新
o:改变列显示顺序,按小写的a-z可以将相应的列向右移动,而大写的A-Z可以将相应的列向左移动,最后按回车键确定。按大写的F或O键,然后按a-z可以将进程按照相应的列进行排序,而大写的R键可以将当前的排序倒转,设置完按回车返回界面。
c:显示命令完全模式
t:显示或隐藏进程和CPU状态信息
m:显示或隐藏内存状态信息
l:显示或隐藏uptime信息
f:增加或减少进程显示标志
S:累计模式,会把已完成或退出的子进程占用的CPU时间累计到父进程的MITE+
s:设置刷新时间间隔
P:按%CPU使用率排行
T:按TIME+排行
M:按%MEM排行
u:指定显示用户进程
r:修改进程renice值
k:终止一个进程
i:只显示正在运行的进程,忽略闲置或僵死进程
W:保存对top的设置到文件~/.toprc,下次启动将自动调用toprc文件的设置。
h:帮助命令。
top命令是Linux上进行系统监控的首选命令,但有时候却达不到我们的要求,可以用ps和netstate两个命令来补充top的不足。
监控java线程数:
ps -eLf | grep java | wc -l
监控网络客户连接数:
netstat -n | grep tcp | grep 侦听端口 | wc -l
上面两个命令,可改动grep的参数,来达到更细致的监控要求。
相关推荐
总的来说,"wrapper-linux-x86-64-3.5.55 社区版"是Linux环境中的一款强大工具,通过它可以轻松地管理和监控Java应用,提高系统的可靠性。对于那些依赖Java服务的企业和开发者,熟悉并掌握Wrapper技术是提升运维效率...
- 监控与报警:设置监控指标,如CPU使用率、内存占用和网络延迟,及时发现并解决问题。 总结,etcd-v3.5.0-linux-amd64是一个强大的工具,用于构建高度可用的分布式系统。了解其工作原理、如何部署和使用,以及...
EMC PowerPath的多路径功能包括负载均衡、故障切换和性能优化,它能够监控和管理多个I/O路径,自动检测并应对网络或硬件故障,从而确保业务连续性和高可用性。 总结来说,DellEMCPower.LINUX-7.1.0.b075.tar.gz是一...
Linux-dash 是一个低开销 Linux 服务器监控系统,基于 Web 的监控界面。Linux-dash 的界面提供了一个详细的概述您的服务器的所有重要方面,包括内存和磁盘使用情况,网络,安装软件,用户,运行的流程。所有信息被组织成...
【作品名称】:基于 ARM-Linux-gcc、Linux-C、C# 实现的智能楼宇安全监控报警系统 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 ...
这里我们关注的是JDK的第21版本,针对Linux Arm架构的二进制发行版,文件名为"jdk-21_linux-aarch64_bin.tar.gz"。这个压缩包包含了在Linux平台上运行和开发Java程序所需的所有组件,特别是对于基于Arm架构的设备,...
- **jps**、**jstat**、**jmap**等:这些是Java性能监控和诊断工具,帮助开发者分析和优化应用性能。 4. **JDK 1.8的新特性**: - **Lambda表达式**:提供了一种简洁的处理匿名函数的方式,使得代码更简洁易读。 ...
Linux运维-03-监控专题-day01-zabbix安装与介绍-01-监控介绍.mp4
通过学习这个“Linux运维-11-Linux云计算-监控-监控概述”的课件资料,你将掌握如何在复杂的云计算环境中实施有效的监控策略,从而提升系统的稳定性和可靠性。同时,这也会帮助你更好地理解Linux运维的工作流程,...
8. **开发者工具(如jconsole、jvisualvm等)**: 这些工具提供性能监控、内存分析、线程诊断等功能,帮助开发者优化应用程序。 9. **Java类库(rt.jar)**: 包含了Java标准版(SE)API的所有核心类,如集合框架、I/...
此外,还要关注JDK的性能监控、日志管理、安全更新和故障排查。 2. **服务器**:JDK在服务器上运行Java应用程序,如Web服务器、数据库服务器、应用服务器等。例如,Tomcat或JBoss这样的应用服务器需要JDK来运行Java...
Prometheus 是一个开源的系统监控和警报工具包,它被广泛用于收集、处理、聚合和存储各种...通过下载并解压"prometheus-2.29.1.linux-amd64.tar.gz",你就可以开始配置和使用这个强大的工具来监控你的Linux系统和服务。
6. **jconsole**:Java可视化监控工具,显示JVM的性能数据。 7. **jvisualvm**:集成的多用途Java应用程序性能分析工具。 8. **javap**:显示类文件的字节码信息。 除此之外,JDK还包含了Java运行时环境(JRE),这...
3. **运维**:指的是系统运维,包括安装、配置、监控、优化和维护IT基础设施,确保系统的稳定运行。 4. **服务器**:这些JDK可能被部署在提供各种服务的服务器上,如Web服务器、数据库服务器等。 5. **嵌入式硬件**...
这包括监控JVM性能(通过jstat、jmap、jstack等工具)、调整JVM参数(如-Xms、-Xmx、-XX:MaxHeapSize等)以及处理常见的内存溢出问题。此外,JDK 8u321还包括了安全性更新和性能优化,因此定期升级到最新版本对于...
此外,还有`javadoc`用于生成API文档,`jps`列出正在运行的Java进程,`jmap`用于内存映射,`jconsole`提供图形化监控工具等。 9. **Java 8的关键特性**: 包括Lambda表达式、方法引用、Stream API、默认方法(接口中...
5. **监控与日志**: 提供了更好的监控指标和详细的日志记录,方便故障排查。 **解压后的文件结构** 解压`etcd-v3.0.9-linux-amd64.tar.gz`后,会得到一个名为`etcd-v3.0.9-linux-amd64`的目录,通常包含以下内容:...
《etcd v3.4.13:分布式键值存储系统在Linux x86_64平台上的实现》 etcd是Google开源的一款基于Golang编写的分布式键值存储系统,它被广泛应用于微服务架构和Kubernetes等容器编排系统中,用于存储和管理关键配置和...
在Linux环境下,开发者还可以利用JDK的命令行工具,如`jps`查看Java进程,`jstat`监控JVM统计信息,`jmap`用于内存映射,以及`jstack`用于生成线程堆栈跟踪,这些都是进行性能调优和问题排查的重要工具。 总的来说...
此外,开发者还可以利用JDK中的各种工具,如JConsole进行性能监控,JVisualVM进行内存分析,或者Javadoc生成API文档。 总结来说,"jdk-8u161-linux-x64.rpm.zip"是一个适用于Linux 64位系统的Java Development Kit...