系统调优4大子系统

  • 1:找出系统中使用CPU最多的进程
  • 2:找出系统中使用内存最多的进程
  • 3:找出系统中对磁盘读写最多的进程
  • 4:找出系统中使用网络最多的进程

系统调优概述

系统的运行状况:  CPU->  MEM  ->  DISK->  NETWORK  ->  应用程序调优

系统性能优化的4个子系统:

    CPU

    Memory

    IO

    Network

1.找出系统中使用CPU最多的进程

查看CPU负载相关工具uptime命令

[root@jumpserver ~]# uptime
:: up :, user, load average: 0.00, 0.01, 0.05

其内容如下:

19:13:35

当前时间

up 3:59

系统运行时间 ,说明此服务器连续运行3小时59分钟了

1 user

当前登录用户数

load average: 0.00, 0.01, 0.05

系统负载,即任务队列的平均长度。 三个数值分别为  1分钟、5分钟、15分钟前到现在的平均值

如果服务器的CPU为1核心,则load average中的数字  >=3  负载过高,如果服务器的CPU为4核心,则load average中的数字  >=12  负载过高

单核心,1分钟的系统平均负载不要超过3,就可以

使用top命令

运行top , 找出使用CPU最多的进程 ,按大写的P,可以按CPU使用率来排序显示

按照实际使用CPU ,从大到小排序显示所有进程列表

[root@jumpserver ~]# ps -aux --sort -pcpu | less    #按cpu降序排序查看
# -pcpu 可以显示出进程绝对路径,方便找出木马程序运行的路径

2.找出系统中使用内存最多的进程

使用top命令

运行top  , 然后按下大写的M 可以按内存使用率来排序显示

[root@jumpserver ~]# top

按照实际使用内存 ,从大到小排序显示所有进程列表

[root@jumpserver ~]# ps -aux  --sort -rss | less    # 内存降序排序

3、找出系统中对磁盘读写最多的进程

查看系统中哪个磁盘或分区最繁忙

通过iostat命令查看IO是否存在瓶颈

常用参数 :

-d 仅显示磁盘统计信息

-k 以K为单位显示每秒的磁盘请求数,默认单位块

-p device | ALL 用于显示块设备及系统分区的统计信息

安装iostat

[root@jumpserver ~]# yum -y install sysstat
[root@jumpserver ~]# iostat -d -k -p /dev/sda
Linux 3.10.-.el7.x86_64 (jumpserver) 2018年08月06日 _x86_64_ ( CPU) Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.49 17.71 4.42
sda1 0.06 1.40 0.12
sda2 0.42 16.26 4.30

每列含意 :

kB_read/s   每秒从磁盘读入的数据量,单位为K

kB_wrtn/s    每秒向磁盘写入的数据量,单位为K

kB_read    读入的数据总量,单位为K

kB_wrtn    写入的数据总量,单位为K

给磁盘写入一些内容 , 写入时尽可能不读磁盘

[root@jumpserver ~]# dd if=/dev/zero  of=a.txt bs=10M  count= ;  sync
# 读入的数据用/dev/zero , /dev/zero不会读磁盘
# #把内存中的数据快速写到磁盘上。 只做dd不执行sync,不容易看不出写入效果 [root@jumpserver ~]# iostat -p sda -dk
Linux 3.10.-.el7.x86_64 (jumpserver) 2018年08月06日 _x86_64_ ( CPU) Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 1.43 36.59 460.93
sda1 0.06 1.32 0.11
sda2 1.37 35.21 460.82

查看哪个进程使用磁盘读写最多

iotop命令,查看哪个进程使用磁盘读写最多

安装iotop

参数:

-o, -only 只显示在读写硬盘的程序

-d SEC, -delay=SEC  设定显示时间间隔  刷新时间

退出 ,按q或ctrl+C

[root@jumpserver ~]# yum -y install iotop  
[root@jumpserver ~]# iotop -o -d 1  # 显示正在使用磁盘的进程

在另一个终端对磁盘进行大量读操作 ,执行 :

[root@jumpserver ~]# find /

已经知道怎么找出使用系统的cpu ,内存 ,磁盘最多的进程

哪怎么找出系统中使用网络最多的进程呢

windows中有流量显示 ,双击后,可以查到每个进程使用的流量 , Linux有吗

Linux 可以使用nload

找出系统中使用网络最多的进程

1.使用nload监控总体带宽使用情况

2.使用nethogs找出使用带宽最多的进程

安装nload :

[root@jumpserver ~]# yum -y install nload
[root@jumpserver ~]# nload # 开始监控

然后另一个终端上运行 :

[root@jumpserver ~]# yum -y install httpd
[root@jumpserver ~]# systemctl start httpd
[root@jumpserver ~]# ab -n -c http://www.baidu.com/index.html # 产生一些测试数据

查看结果:

Incoming : 下载   Outgoing  :上传

2.使用nethogs找出使用带宽最多的进程

安装nethogs :

[root@jumpserver ~]# yum -y install nethogs
[root@jumpserver ~]# nethogs

在另一个终端生成一些数据 :

[root@jumpserver ~]# wget http://mirrors.zju.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso

可以看到进程号 , 用户 , 进程都可以看到

 

CentOS 7 系统优化的更多相关文章

  1. Centos 7系统优化脚本

    脚本如下,后续继续优化 #!/bin/bash #author junxi by #this script is only for CentOS 7.x #check the OS platform= ...

  2. 四、Centos linux系统优化

    1.     无论是哪个版本的linux,都会提供32位和64位的两个版本的镜像. i386为32位 x86_64为64位 两者的区别: 1)目标:需要大量的内存需求的行业为64位,普通用户的需求为3 ...

  3. 五、Centos linux系统优化-实战

    一.linux用户名和密码远程登陆的修改: windows默认的远程端口和管理员:user:administrator    prot:3389在管理--->本地用户和组   进行权限设置或者修 ...

  4. centos 操作系统优化

    命令提示符优化 修改PS1环境变化 vim /etc/profile #在最后一行添加 export PS1='[\u@\H \w]$' \u ---显示当前登录用户名称 \h ---显示系统主机名称 ...

  5. CentOS 6一键系统优化 Shell 脚本

    CentOS 6一键系统优化 Shell 脚本 脚本的内容如下: #!/bin/bash#author suzezhi#this script is only for CentOS 6#check t ...

  6. Centos系统优化

    系统优化脚本 #!/bin/bash #author junxi by #this script is only for CentOS 7.x #check the OS platform=`unam ...

  7. CentOS系统优化一键配置脚本

    #!/usr/bin/env bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export P ...

  8. Centos 04 基础系统优化命令

    在Linux这个系统当中,几乎所有的硬件设备文件都在/dev这个目录内.举例来说,IDE介面的硬盘的文件名称即为/dev/hd[a-d],其中, 括号内的字母为a-d当中的任意一个,亦即有/dev/h ...

  9. CentOS 7.4系统优化/安装软件

    源改为国内源 阿里云yum源 https://opsx.alibaba.com/mirror 清华yum源 https://mirrors.tuna.tsinghua.edu.cn/ 网易163yum ...

随机推荐

  1. JDK 自带的观察者模式源码分析以及和自定义实现的取舍

    前言 总的结论就是:不推荐使用JDK自带的观察者API,而是自定义实现,但是可以借鉴其好的思想. java.util.Observer 接口源码分析 该接口十分简单,是各个观察者需要实现的接口 pac ...

  2. sprintf的Bug

    ]; sprintf(buffer,,,); 这样一般不崩溃,但是10次,有那么一次会崩溃 我只能说后面改成 0.0就可以了...

  3. Springboot多数据源配置--数据源动态切换

    在上一篇我们介绍了多数据源,但是我们会发现在实际中我们很少直接获取数据源对象进行操作,我们常用的是jdbcTemplate或者是jpa进行操作数据库.那么这一节我们将要介绍怎么进行多数据源动态切换.添 ...

  4. TensorFlow 1.4利用Keras+Estimator API进行训练和预测

    Tensorflow 1.4中,Keras作为作为核心模块可以直接通过tf.keas进行调用,但是考虑到keras对tfrecords文件进行操作比较麻烦,而将keras模型转成tensorflow中 ...

  5. miniprogrampatch 提供 watch 和 computed 特性

    推荐一个小程序补丁 github:miniprogrampatch,为你的 Page 和 Component 增加 watch 和 computed 特性. 安装 通过 npm 安装:npm inst ...

  6. 使用RecyclerView设置自定义分割线

    在安卓开发中,RecyclerView控件来做一些列表是非常方便的,如何使用在网上很多文章,这次着重来说一下怎么设置自定义分割线: 首先,我们来看一下怎么设置默认的分割线 RecyclerView m ...

  7. 130、 Android OkHttp完全解析(转载)

    完全解析:http://blog.csdn.net/lmj623565791/article/details/47911083 从原理角度解析http文件上传 http://blog.csdn.net ...

  8. css的position中absolute和fixed的区别

    fixed:固定定位 absolute:绝对定位 区别很简单: 1.没有滚动条的情况下没有差异 2.在有滚动条的情况下,fixed定位不会随滚动条移动而移动,而absolute则会随滚动条移动 常用场 ...

  9. java httpclient post xml demo

    jar archive: http://archive.apache.org/dist/httpcomponents/ 基于httpclient 2.0 final的demo(for jdk1.5/1 ...

  10. laravel的csrf token 的了解及使用

    之前在项目中因为没有弄清楚csrf token的使用,导致发请求的话,一直请求失败,今天就一起来看一下csrf的一些东西. 1.Cross-site request forgery 跨站请求伪造,也被 ...