zoukankan      html  css  js  c++  java
  • 理解Linux系统负荷 和 ubuntu静态、动态设置ip地址

    查看系统负荷

    如果你的电脑很慢,你或许想查看一下,它的工作量是否太大了

    在Linux系统中,我们一般是通过uptime命令(w命令和top命令)

    在终端输入uptime,系统会返回一行信息



    这行信息的后半部分,显示“load average”,它的意思是“系统的平均负荷”,里面有三个数字,分别是1分钟、5分钟、15分钟内系统的平均负荷

    man一下手册,可以知道,CPU完全空闲的时候,平均负荷是0,当cpu工作量饱和的适合,平均负荷是1

    很显然,“load average”的值越低,比如等于0.2或0.3,就说明电脑的工作量越小,系统负荷比较轻

    但是,什么时候能看出系统负荷比较重呢?等于1的时候,还是等于0.5或者等于1.5的时候?如果1分钟、5分钟、15分钟的三个值不一样,怎么办?

    一个类比

    判断系统负荷是否过重,必须理解load average的真正含义。下面,我根据“UnderStanding Linux CPU load”这篇文章,尝试用最通俗的语言,来解释这个问题

    首先,假设最简单的情况,你的电脑里只有一个CPU,所有的运算都必须由这个CPU来完成

    那么,我们不妨把这个cpu想象成一座大桥,桥上只有一根车道,所有车辆必须从这根车道上通过(很显然,这座桥只能单向通行)

    系统负荷为0,意味着大桥上一辆车也没有




    系统负荷为0.5.意味着大桥一半的路段有车




    系统负荷为1.0,意味着大桥的所有路段都有车,也就是说大桥已经“满”了,但是必须注意的是,直到此时大桥还是能顺畅通行的



    系统负荷为1.7,意味着车辆太多了,大桥已经被占满了(100%),后面等着上桥的车辆为桥面车辆的70%.以此类推,系统负荷为2.0,意味着等待上桥的车辆和桥面的车辆一样多。系统负荷为3.0,意味着等待上桥的车辆是桥面车辆的2倍。总之,系统负荷大于1,后面的车辆就必须等待了;系统负荷越大,过桥就必须等得越久



    CPU的系统负荷,基本上等同于上面的类比。大桥的通行能力,就是CPU的最大工作量;桥梁上车辆,就是一个个等待CPU处理的进程

    如果CPU每分钟最多处理100个进程,那么系统负荷0.2,意味着CPU在这一分钟里只处理了20个进程;系统负荷为1.0,意味着CPU在这一分钟里正好处理了100个进程;系统负荷为1.7,意味着处理CPU正在处理的100个进程,还有70个进程正在排队等着CPU处理

    为了电脑顺畅运行,系统负荷最好不要超过1.0,这样就没有进程需要等待了,所有进程都能第一时间得到处理。很显然,1.0是一个关键值,超过这个值,系统就不在最佳状态,你需要手动干预了

    系统负荷的经验法则

    1.0是系统负荷的理想值吗?

    不一定,系统管理员往往会留一点余地,当这个值达到0.7,就应当引起注意了。经验法则是这样的:
    • 当系统负荷持续大于0.7,你必须开始调查了,问题出在哪里,防止情况恶化
    • 当系统负荷持续大于1.0,你必须动手寻找解决办法,把这个值降下来。
    • 当系统负荷达到5.0,就表明你的系统有很严重的问题,长时间没有响应,或者接近死机了。你不应该让系统达到这个值。

    多处理器

    上面,我们假设你的电脑只有一个CPU。如果你的电脑装了两个CPU,会发生什么情况呢?

    2个CPU,意味着电脑的处理能力翻了一倍,能够同时处理的进程数量也翻了一倍

    还是用大桥来类比,两个CPU就意味着大桥有两根车道了,通车能力翻倍了



    所以,2个CPU表明系统负荷可以达到2.0,此时每个CPU都达到100%的工作量。推广开来,n个CPU的电脑,可接受的系统负荷最大为n.0


     多核处理器

    芯片厂商往往在一个cpu内部,包含多个cpu核心,这被成为多核cpu

    在系统负荷方面,多核cpu和多cpu效果类似,所以考虑系统负荷的时候,必须考虑这台电脑有几个CPU,每个CPU几个核心。然后,把系统负荷除以总的核心数,只要每个核心的负荷不超过1.0,就表明电脑正常运转

    查看电脑有几个CPU核心:


    1. cat /proc/cpuinfo |grep 'model name' | wc -l 



    ubuntu静态、动态设置ip地址


    静态ip设定

    修改 /etc/network/interfaces

    1. auto eth0  
    2. iface eth0 inet static  
    3. address ip地址  
    4. netmask 子网掩码  
    5. gateway 网关  

    双网卡可以相应的设置eth1网卡


    动态ip设定

    修改 /etc/network/interfaces
    1. auto eth0  
    2. iface eth0 inet dhcp  


    DNS设定

    修改 /etc/resolv.conf

    1. nameserver  dns服务器ip地址  

    重启networking服务

    1. sudo  /etc/init.d/networking  restart 

  • 相关阅读:
    使用 requests 维持会话
    使用 requests 发送 POST 请求
    使用 requests 发送 GET 请求
    requests 安装
    使用 urllib 分析 Robots 协议
    使用 urllib 解析 URL 链接
    使用 urllib 处理 HTTP 异常
    使用 urllib 处理 Cookies 信息
    使用 urllib 设置代理服务
    按单生产程序发布
  • 原文地址:https://www.cnblogs.com/cuker919/p/4878525.html
Copyright © 2011-2022 走看看