<em id="pn7p8"><acronym id="pn7p8"><u id="pn7p8"></u></acronym></em>

    <th id="pn7p8"></th>

    <button id="pn7p8"></button>

      <dd id="pn7p8"></dd>
      <progress id="pn7p8"><track id="pn7p8"></track></progress>

      Linux培訓
      達內IT學院

      400-111-8989

      在 RedHat Linux 上做性能調優

      • 發布:Linux培訓
      • 來源:Linux運維
      • 時間:2016-01-07 17:16

      性能調優的目的是提高系統性能,減少電力消耗,或者減輕某個應用對系統中其它應用的影響。但是如果貿然地,沒有適當的手段進行系統調優,那可能會產生負面效果。

      如果我們有系統有計劃地進行性能調優,那么它就會成為嚴謹的科學探索而不是隨心所欲的藝術行為。

      具體方法

      首先我們需要弄明白“正常”的系統性能情形是什么樣的。

      查找潛在的性能問題并進行參數調優來修復。觀察這些調整對系統的影響并決定是否確認保持這種調整或者恢復到調整前的狀態。

      概要:

      收集數據,建立基準。

      開啟 tuned 功能并選擇合理的默認值。

      觀察圖形報告統計,確認所做的調整是否正確。提交更改或回滾恢復。

      確定潛在的性能問題。

      調整優化參數。

      重復步驟3。

      在開始性能調優前,首先建立基準

      調優前后的衡量標準

      你可以在調優前后通過使用“stress tester“來快速為應用建立基準,參見 Stress testing with Apache JMeter 這篇文章中的示例。

      使用歷史數據的衡量標準

      如果你有以前的歷史數據作為衡量標準,你可以使用帶有圖形化報告的資源監控的歷史數據。即使在當今這種自動化數據分析手段流行的時代,古老的肉眼觀察方式依然非常有用,正因為如此,你需要圖形化的展示方式,而不是滿眼的數據。

      (另外,你可以給你的老板展示美觀的圖形數據,也許他/她們突然走到你面前問你在花費寶貴的公司時間做什么)

      你應該用圖形來展示所提供服務的資源使用度情況和反應時間。對于 web server 來說,這可能是請求的數量,每個請求的反應時間,以及每個響應的數據量大小。

      對于 apache 和 nginx 來說,請參見 Logging elapse time in apache and ginx,這篇文章描述了如何記錄需要的數量。

      munin disk graph

      munin disk graph

      你應該圖形化這些應用對資源的使用度,隊列以及響應時間。通常來說是對網絡和磁盤的 IO 進行圖形化展示。

      圖形化每秒的請求數量以及請求響應延遲。

      于圖形化展示的工具

      我個人喜歡用 Munin。這個工具可以在 EPEL 倉庫找到。這個工具絕對稱得上“老式的”,但它非常容易上手,而且它還有非常豐富的插件可供使用。在你安裝使用 Munin 上,它會默認安裝許多圖形化工具。如果你需要更多的圖形化插件,你可以在 contrib 倉庫上找到它們。

      對于一些更先進的監控工具,Elasticsearch,Logstash 和 Kibana 在日志分析和可視化展示方面更受歡迎。設置 ELK 來加載所需要監控的數據,使用 Topbeat 作為資源使用度衡量標準,使用 Filebeat 作為實時日志文件分析,使用 Packetbeat 來分析在線網絡數據。

      可選的工具有很多,選用你所了解的,喜歡的或者你想學習的。你需要記住的最重要的事情是:確保在你開始修改操作前知道你的基準數據。

      性能調優工具

      tuna

      tuna 可以用來控制進程及其調度關系。

      例如:在一個健狀的系統上卻有差的網絡性能,并且可以觀察到有幾個處理核心處于空閑狀態。通過檢查網卡發現多工調度隊列功能已開啟,而且它們已經分布在所有可用的處理核心上。

      此處假設這些網卡命名為“enp1s0f0“和”enp1s0f1“:

          [root@golem ~]# tuna --irq 'enp1s0f*' --socket 0 --spread --show_irqs
             # users            affinity
            69 enp1s0f0                0  igb
            70 enp1s0f0-rx-0           1  igb
            71 enp1s0f0-rx-1           2  igb
            72 enp1s0f0-rx-2           3  igb
            73 enp1s0f0-rx-3           4  igb
            74 enp1s0f0-tx-0           5  igb
            75 enp1s0f0-tx-1           6  igb
            76 enp1s0f0-tx-2           7  igb
            77 enp1s0f0-tx-3           0  igb
            79 enp1s0f1                1  igb
            80 enp1s0f1-rx-0           2  igb
            81 enp1s0f1-rx-1           3  igb
            82 enp1s0f1-rx-2           4  igb
            83 enp1s0f1-rx-3           5  igb
            84 enp1s0f1-tx-0           6  igb
            85 enp1s0f1-tx-1           7  igb
            86 enp1s0f1-tx-2           0  igb
            87 enp1s0f1-tx-3           1  igb

      對于擁有多塊 CPU 的系統,你可以把你喜歡的進程移到某塊 CPU 上,并且把網絡管理移到另一個上。

      tuned

      tuned 這個工具已經在 Red Hat 的多個發行版中可用。

      tuned 帶有多種調優預置配置;用于各種通用服務器的合理的默認配置。用于“虛擬用戶”的配置,用于“虛擬主機”的配置,還有用于“高吞吐量”或者“低延遲”的預置配置。他們應該對更進一步的應用提供初始配置。例如:

          [root@golem ~]# tuned-adm list
          - balanced
          - desktop
          - latency-performance
          - network-latency
          - network-throughput
          - powersave
          - throughput-performance
          - virtual-guest
          - virtual-host
          Current active profile: throughput-performance

      不同的默認預置配置有著健全的文檔,而且如果你想自定義的話,有初始配置文件可供使用。

      在物理機上默認的預置配置是“throughput-performance“或者”balanced“,在虛擬機上的默認預置配置是”virtual-guest“。

      tuned 的默認預置配置在 /usr/lib/tuned 目錄下。

          [root@golem ~]# tree /usr/lib/tuned
          /usr/lib/tuned
          |-- balanced
          |   `-- tuned.conf
          |-- desktop
          |   `-- tuned.conf
          |-- functions
          |-- latency-performance
          |   `-- tuned.conf
          |-- network-latency
          |   `-- tuned.conf
          |-- network-throughput
          |   `-- tuned.conf
          |-- powersave
          |   |-- script.sh
          |   `-- tuned.conf
          |-- recommend.conf
          |-- throughput-performance
          |   `-- tuned.conf
          |-- virtual-guest
          |   `-- tuned.conf
          `-- virtual-host
              `-- tuned.conf

      每個配置包括一個 tuned.conf 文件,這個文件帶有 INI 文件語義格式和一個可選的腳本解釋器。

      如果想生成一個自定義的配置文件,你可以拷貝這些目錄里的一個文件到 /etc/tuned 目錄,做必要的修改并激活使用。

          [root@golem ~]# cp -a /usr/lib/tuned/throughput-performance /etc/tuned/wonderprofile
          [root@golem ~]# vim /etc/tuned/wonderprofile/tuned.conf
          [root@golem ~]# tuned-adm profile wonderprofile

      例如:/etc/tuned/wonderprofile/tuned.conf文件,對它進行少量調整。

          [main]
          include=throughput-performance
          [sysctl]
          net.ipv4.tcp_rmem="4096 87380 16777216"
          net.ipv4.tcp_wmem="4096 16384 16777216"
          net.ipv4.udp_mem="3145728 4194304 16777216"

      同樣對/etc/tuned/wonderprofile/script.sh進行調整。

          #!/bin/sh
          # Lots of functions in here to use
          . /usr/lib/tuned/functions
          start() {
              [ "$USB_AUTOSUSPEND" = 1 ] && enable_usb_autosuspend
              enable_wifi_powersave
              return 0
          }
          stop() {
              [ "$USB_AUTOSUSPEND" = 1 ] && disable_usb_autosuspend
              disable_wifi_powersave
              return 0
          }
          process $@

      預約申請免費試聽課

      填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

      上一篇:服務器監控免費工具
      下一篇:Linux 系統下查看硬件信息命令大全

      在Linux中設置sudo的十條sudoers實用配置

      Linux下安裝Node.js詳細完整教程

      深入 Linux I/O 重定向

      安裝Linux時的注意事項

      • 掃碼領取資料

        回復關鍵字:視頻資料

        免費領取 達內課程視頻學習資料

      • 視頻學習QQ群

        添加QQ群:1143617948

        免費領取達內課程視頻學習資料

      Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

      選擇城市和中心
      黑龍江省

      吉林省

      河北省

      湖南省

      貴州省

      云南省

      廣西省

      海南省

      高清特黄a大片,日本真人真做爰,特级做人爱C级,免费a级毛片 百度 好搜 搜狗
      <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>