热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php远程监控硬盘状态,监控磁盘状态,内存状态,进程,网络状态

监控io性能iostat命令,可以直接查看磁盘的使用情况[rootlocalhost~]#iostatLinux3.10.0-123.el7.x86_64(local

监控io性能

iostat命令,可以直接查看磁盘的使用情况

[root@localhost ~]# iostat

Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) 2018年07月12日 _x86_64_(4 CPU)

avg-cpu: %user %nice %system %iowait %steal %idle

0.18 0.00 1.14 1.90 0.00 96.78

Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn

sdb 1.04 4.16 0.00 1564 0

sda 14.70 284.06 14.51 106842 5459

dm-0 0.24 0.97 0.00 364 0

iostat 1 10动态显示磁盘使用情况,隔一秒输出一次,一共输出10次

iostat -x 比较全面的显示磁盘使用情况,其中%util是CPU等待硬盘读写数据的时间占比,如该数据过大则说明磁盘的读写出现了问题。

[root@localhost ~]# iostat -x

Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) 2018年07月12日 _x86_64_(4 CPU)

avg-cpu: %user %nice %system %iowait %steal %idle

0.12 0.00 0.81 1.26 0.00 97.81

Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util

sdb 0.00 0.00 0.69 0.00 2.78 0.00 8.00 0.00 5.73 5.73 0.00 5.21 0.36

sda 1.06 0.03 7.64 2.20 189.77 9.73 40.57 0.11 11.28 13.02 5.24 4.85 4.77

dm-0 0.00 0.00 0.16 0.00 0.65 0.00 8.00 0.00 1.99 1.99 0.00 1.99 0.03

iotop 该命令会把读写磁盘的进程动态的显示出来 在使用LINUX时经常会遇到系统IO占用很高,系统IO占用可以使用iostat -x 1查看,但是查看哪个进程占用的磁盘IO负载高,就可以使用iotop工具了。

[root@localhost ~]# iotop

Total DISK READ :0.00 B/s | Total DISK WRITE : 0.00 B/s

Actual DISK READ:0.00 B/s | Actual DISK WRITE: 0.00 B/s

TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND

1 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % systemd --switched-root --system --deserialize 23

2 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kthreadd]

3 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ksoftirqd/0]

5 be/0 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kworker/0:0H]

6 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kworker/u256:0]

7 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [migration/0]

8 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcu_bh]

9 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcuob/0]

10 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcuob/1]

11 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcuob/2]

12 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcuob/3]

13 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcuob/4]

14 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcuob/5]

15 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcuob/6]

监控内存使用情况

free命令 查看内存的使用情况。默认单位是kb

[root@localhost ~]# free

total used free shared buffers cached

Mem: 3869044 481724 3387320 8692 692 218860

-/+ buffers/cache: 262172 3606872

Swap: 2047996 0 2047996

可以看到物理内存的使用情况和swap分区的使用情况。如果swap分区使用较多了表示需要增加内存了。

free -h 自适应单位输出数值

free -m 以兆为单位输出数值

显示内容,

total:总内存大小 ;

used:已使用内存大小

free:空闲内存大小

shared:当前已废弃不用内存大小

buffers:缓冲空间大小

cached:缓存空间大小

available 大小是buff/cache未使用的部分+free的大小

监控进程

ps命令

ps -aux 显示进程情况,这是静态输出的。

ps -aux |grep sshd 查看sshd进程是否开启

可以利用PID来杀死进程,kill pid号就可以实现

ls -l /proc/pid号,可以查看进程实在哪里启动的。

查看网络状态

netstat 列出端口信息

netstat -lnp 列出系统监听端口

netstat -an 查看系统的网络连接状况

netstat -lntp 列出监听端口,只看tcp的,不包括socket

ss -an 跟netstat -an 作用一样

[root@localhost ~]# netstat -lntp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2342/master

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1340/sshd

tcp6 0 0 ::1:25 :::* LISTEN 2342/master

tcp6 0 0 :::22 :::* LISTEN 1340/sshd

Linux抓包工具

tcpdump 抓包,yum install -y tcpdump先安装该工具

tcpdump -nn -i ,该指令中-nn是为了把主机名和端口都使用数字显示出来,主机名会显示成ip ,端口直接显示出端口号;-i是指定网卡(抓取哪个网卡的包)

tcpdump -c 可以指定抓包的数量

tcpdump -w 可以将抓包的数据流向内容写入到一个文件中

tcpdump -r 文件名 可以查看写入数据流向内容的文件

[root@localhost ~]# tcpdump -nn -c 5 -i eno16777736

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on eno16777736, link-type EN10MB (Ethernet), capture size 262144 bytes

16:25:07.903212 IP 192.168.254.130.22 > 192.168.254.1.55550: Flags [P.], seq 1722853797:1722854009, ack 913713024, win 159, length 212

16:25:07.903638 IP 192.168.254.1.55550 > 192.168.254.130.22: Flags [.], ack 212, win 254, length 0

16:25:07.903830 IP 192.168.254.130.22 > 192.168.254.1.55550: Flags [P.], seq 212:408, ack 1, win 159, length 196

16:25:07.939544 IP 192.168.254.130.22 > 192.168.254.1.55550: Flags [P.], seq 408:684, ack 1, win 159, length 276

16:25:07.939730 IP 192.168.254.1.55550 > 192.168.254.130.22: Flags [.], ack 684, win 252, length 0

5 packets captured

6 packets received by filter

0 packets dropped by kernel



推荐阅读
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 在Linux系统中避免安装MySQL的简易指南
    在Linux系统中避免安装MySQL的简易指南 ... [详细]
  • Unity与MySQL连接过程中出现的新挑战及解决方案探析 ... [详细]
  • SecureCRT是一款功能强大的终端仿真软件,支持SSH1和SSH2协议,适用于在Windows环境下高效连接和管理Linux服务器。该工具不仅提供了稳定的连接性能,还具备丰富的配置选项,能够满足不同用户的需求。通过SecureCRT,用户可以轻松实现对远程Linux系统的安全访问和操作。 ... [详细]
  • 本文探讨了如何通过编程手段在Linux系统中禁用硬件预取功能。基于Intel® Core™微架构的应用性能优化需求,文章详细介绍了相关配置方法和代码实现,旨在帮助开发人员有效控制硬件预取行为,提升应用程序的运行效率。 ... [详细]
  • Java Socket 关键参数详解与优化建议
    Java Socket 的 API 虽然被广泛使用,但其关键参数的用途却鲜为人知。本文详细解析了 Java Socket 中的重要参数,如 backlog 参数,它用于控制服务器等待连接请求的队列长度。此外,还探讨了其他参数如 SO_TIMEOUT、SO_REUSEADDR 等的配置方法及其对性能的影响,并提供了优化建议,帮助开发者提升网络通信的稳定性和效率。 ... [详细]
  • 在Cisco IOS XR系统中,存在提供服务的服务器和使用这些服务的客户端。本文深入探讨了进程与线程状态转换机制,分析了其在系统性能优化中的关键作用,并提出了改进措施,以提高系统的响应速度和资源利用率。通过详细研究状态转换的各个环节,本文为开发人员和系统管理员提供了实用的指导,旨在提升整体系统效率和稳定性。 ... [详细]
  • 线程能否先以安全方式获取对象,再进行非安全发布? ... [详细]
  • 在 CentOS 6.5 系统上部署 VNC 服务器的详细步骤与配置指南
    在 CentOS 6.5 系统上部署 VNC 服务器时,首先需要确认 VNC 服务是否已安装。通常情况下,VNC 服务默认未安装。可以通过运行特定的查询命令来检查其安装状态。如果查询结果为空,则表明 VNC 服务尚未安装,需进行手动安装。此外,建议在安装前确保系统的软件包管理器已更新至最新版本,以避免兼容性问题。 ... [详细]
  • 本文详细介绍了在MySQL中如何高效利用EXPLAIN命令进行查询优化。通过实例解析和步骤说明,文章旨在帮助读者深入理解EXPLAIN命令的工作原理及其在性能调优中的应用,内容通俗易懂且结构清晰,适合各水平的数据库管理员和技术人员参考学习。 ... [详细]
  • 本文深入解析了JDK 8中HashMap的源代码,重点探讨了put方法的工作机制及其内部参数的设定原理。HashMap允许键和值为null,但键为null的情况只能出现一次,因为null键在内部通过索引0进行存储。文章详细分析了capacity(容量)、size(大小)、loadFactor(加载因子)以及红黑树转换阈值的设定原则,帮助读者更好地理解HashMap的高效实现和性能优化策略。 ... [详细]
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 本文探讨了如何利用Java代码获取当前本地操作系统中正在运行的进程列表及其详细信息。通过引入必要的包和类,开发者可以轻松地实现这一功能,为系统监控和管理提供有力支持。示例代码展示了具体实现方法,适用于需要了解系统进程状态的开发人员。 ... [详细]
  • Java能否直接通过HTTP将字节流绕过HEAP写入SD卡? ... [详细]
author-avatar
脉趣小鱼
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有