<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    匯總:20個Linux服務器性能調優技巧

    VSole2022-03-16 07:06:15

    Linux是一種開源操作系統,它支持各種硬件平臺,Linux服務器全球知名,它和Windows之間最主要的差異在于,Linux服務器默認情況下一般不提供GUI(圖形用戶界面),而是命令行界面,它的主要目的是高效處理非交互式進程,響應時間并不是那么重要,相反,能夠長時間處理高負載才是最關鍵的。

    Linux高可用服務器集群解決方案讓IT系統管理員可以從容應對許多常見的硬件和軟件故障,允許多臺計算機一起工作,為關鍵服務正常運行提供保障,系統管理員可以不中斷服務執行維護和升級。

    Linux服務器有各種用途,如Web服務器或分支機構內部服務器,CMS或CRS服務器,文件服務器(為Windows和/或Linux用戶服務),VoIP電話服務器,郵件或域名服務器,數據庫服務器,云計算配置中的基礎設施節點等。

    Linux功能豐富、強大、靈活,你可以用它完成各種任務,在這篇文章中,我們將討論一些提高Linux服務器性能的技巧。

    1、為磁盤I/O調整Linux內核電梯算法

    在選擇文件系統后,有一些內核和掛載選項可能會影響到它的性能表現,其中一個內核設置是電梯算法,通過調整電梯算法,系統可以平衡低延遲需求,收集足夠的數據,以有效地組織對磁盤的讀和寫請求。

    2、禁用不必要的守護進程

    每臺服務器上都運行著許多守護進程或服務,而具有諷刺意味的是,有很多通常不是必需的,這些服務沒有發揮作用,但卻消耗了寶貴的內存和CPU時間。

    此外,它們可能將服務器置于危險境地,多運行一個服務就等于多向黑客打開一扇長驅直入的門,因此,你應該將它們從服務器移除,禁用它們最大的好處是可以加快啟動時間,釋放內存。

    另外,你可以減少CPU需要處理的進程數,禁用它們的另一個好處是增強服務器的安全性,因為越少的守護進程意味著可被攻擊和利用的漏洞越少。

    下面是一些應該被禁用的Linux守護進程,默認情況下,它們都是自動運行的:

    序號  守護進程  描述 

    1  Apmd  高級電源管理守護進程

    2  Nfslock  用于NFS文件鎖定

    3  Isdn  ISDN Moderm支持 

    4  Autofs  在后臺自動掛載文件系統(如自動掛載CD-ROM) 

    5  Sendmail  郵件傳輸代理

    6  Xfs  X Window的字體服務器

    3、關掉GUI

    一般說來,Linux服務器是不需要GUI的,所有管理任務都可以在命令行下完成,因此最好關掉GUI,重定向X顯示或通過一個Web瀏覽器界面顯示。為了禁用GUI,“init level(啟動級別)”應該被設置為3(命令行登錄),而不是5(圖形登錄),如果需要GUI,可以隨時運行startx進入圖形用戶界面。

    4、清理不需要的模塊或功能

    在服務器軟件包中有太多被啟動的功能或模塊實際上是不需要的(如Apache中的許多功能模塊),仔細查看Apache配置文件,確定FrontPage支持或其它額外的模塊是否真的要用到,如果不需要,應該毫不猶豫地從服務器禁用掉,這樣有助于提高系統內存可用量,騰出更多資源給那些真正需要的軟件,讓它們運行得更快。

    5、禁用控制面板

    在Linux中,有許多流行的控制面板,如Cpanel,Plesk,Webmin和phpMyAdmin等,相信每個Linux初級用戶都很喜歡這些控制面板,但是,禁用掉這些軟件包可以釋放出大約120MB內存,因此,我強烈建議禁用掉這些控制面板,除非它們真的需要用到,它們可以通過PHP腳本(盡管有些不安全),或命令行命令啟用,這樣做后,內存使用量大約可以下降30-40%。

    6、改善Linux Exim服務器性能

    有許多種方法改善服務器的Exim性能,其中一個辦法是使用DNS緩存守護進程,它可以降低解析DNS記錄需要的帶寬和CPU時間,DNS緩存通過消除每次都從根節點開始查找DNS記錄的需求,從而改善網絡性能,Djbdns是一個非常強大的DNS服務器,它具有DNS緩存功能,Djbdns比BIND DNS服務器更安全,性能更好,可以直接通過http://cr.yp.to/下載,或通過Red Hat提供的軟件包獲得。

    7、使用AES256增強gpg文件加密安全

    為了提高備份文件或敏感信息的安全,許多Linux系統管理員都會使用gpg進行加密,在使用gpg時,最好指定gpg使用AES256加密算法,AES256使用256位密鑰,它是一個開放的加密算法,美國國家安全局(NSA)都使用它保護絕密信息,沒有什么比它更安全的了。

    8、遠程備份服務安全

    安全是選擇遠程備份服務最重要的因素,大多數系統管理員都害怕兩件事:(黑客)可以刪除備份文件,不能從備份恢復系統。

    為了保證備份文件100%的安全,備份服務公司提供遠程備份服務器,使用scp腳本或RSYNC通過SSH傳輸數據,這樣,沒有人可以直接進入和訪問遠程系統,因此,也沒有人可以從備份服務刪除數據。在選擇遠程備份服務提供商時,最好從多個方面了解其服務強壯性,如果可以,可以親自測試一下。

    9、更新默認內核參數設置

    為了順利和成功運行企業應用程序,如數據庫服務器,可能需要更新一些默認的內核參數設置,例如,2.4.x系列內核消息隊列參數msgmni有一個默認值(例如,共享內存,或shmmax在Red Hat系統上默認只有33554432字節),它只允許有限的數據庫并發連接,下面為數據庫服務器更好地運行提供了一些建議值(來自IBM DB2支持網站):

    kernel.shmmax=268435456 (32位) kernel.shmmax=1073741824 (64位) kernel.msgmni=1024 fs.file-max=8192 kernel.sem=”250 32000 32 1024″

    10、優化TCP

    優化TCP協議有助于提高網絡吞吐量,跨廣域網的通信使用的帶寬越大,延遲時間越長時,建議使用越大的TCP Linux大小,以提高數據傳輸速率,TCP Linux大小決定了發送主機在沒有收到數據傳輸確認時,可以向接收主機發送多少數據。

    11、選擇正確的文件系統

    使用ext4文件系統取代ext3

    • Ext4是ext3文件系統的增強版,擴展了存儲限制
    • 它具有日志功能,保證高水平的數據完整性(在非正常關閉事件中)
    • 在非正常關閉和重啟時,它不需要檢查磁盤(這是一個非常耗時的動作)
    • 更快的寫入速度,ext4日志優化了硬盤磁頭動作

    12、使用noatime文件系統掛載選項

    在文件系統啟動配置文件fstab中使用noatime選項,如果使用了外部存儲,這個掛載選項可以有效改善性能。

    13、調整Linux文件描述符限制

    Linux限制了任何進程可以打開的文件描述符數量,默認限制是每進程1024,這些限制可能會阻礙基準測試客戶端(如httperf和apachebench)和Web服務器本身獲得最佳性能,Apache每個連接使用一個進程,因此不會受到影響,但單進程Web服務器,如Zeus是每連接使用一個文件描述符,因此很容易受默認限制的影響。

    打開文件限制是一個可以用ulimit命令調整的限制,ulimit -aS命令顯示當前的限制,ulimit -aH命令顯示硬限制(在未調整/proc中的內核參數前,你不能增加限制)。

    Linux第三方應用程序性能技巧

    對于運行在Linux上的第三方應用程序,一樣有許多性能優化技巧,這些技巧可以幫助你提高Linux服務器的性能,降低運行成本。

    14、正確配置MySQL

    為了給MySQL分配更多的內存,可設置MySQL緩存大小,要是MySQL服務器實例使用了更多內存,就減少緩存大小,如果MySQL在請求增多時停滯不動,就增加MySQL緩存。

    15、正確配置Apache

    檢查Apache使用了多少內存,再調整StartServers和MinSpareServers參數,以釋放更多的內存,將有助于你節省30-40%的內存。

    下面是一些提高Linux服務器監控和故障排除的技巧:

    16、分析Linux服務器性能

    提高系統效率最好的辦法是找出導致整體速度下降的瓶頸并解決掉,下面是找出系統關鍵瓶頸的一些基本技巧:

    • 當大型應用程序,如OpenOffice和Firefox同時運行時,計算機可能會開始變慢,內存不足的出現幾率更高。
    • 如果啟動時真的很慢,可能是應用程序初次啟動需要較長的加載時間,一旦啟動好后運行就正常了,否則很可能是硬盤太慢了。
    • CPU負載持續很高,內存也夠用,但CPU利用率很低,可以使用CPU負載分析工具監控負載時間。

    17、學習5個Linux性能命令

    使用幾個命令就可以管理Linux系統的性能了,下面列出了5個最常用的Linux性能命令,包括top、vmstat、iostat、free和sar,它們有助于系統管理員快速解決性能問題。

    01 top

    Top命令不僅顯示了當前內核服務的任務,還顯示了許多關于主機狀態的統計數據,默認情況下,它每隔5秒自動更新一次顯示的數據(這個時間間隔是可以配置的),通過top命令,我們可以得知幾個結果,如:當前正常運行時間,系統負載,進程數量和內存使用率,此外,這個命令也顯示了那些使用最多CPU時間的進程(包括每個進程的各種信息,如運行用戶,執行的命令等)。

    02 vmstat

    Vmstat命令提供當前CPU、IO、進程和內存使用率的快照,它和top命令類似,自動更新數據,如:

    $ vmstat 10

    03 iostat

    Iostat命令(在Ubuntu,Red Hat/Fedora上包含在sysstat軟件包中)提供三個報告:CPU利用率、設備利用率和網絡文件系統利用率,不加任何參數運行時,iostat將顯示這三個報告,使用-c,-d和-h參數可以分別獨立顯示這三個報告。

    04 free

    Free命令顯示主內存和交換空間的內存統計數據,指定-t參數可以顯示總內存數量,指定-b參數可以按字節為單位進行顯示,使用-m則以兆為單位顯示,默認情況下是以千字節為單位的。

    Free命令也可以使用-s參數加一個延遲時間(單位:秒)連續運行,如:

    $ free -s 5

    05 sar

    Sar命令收集,查看和記錄性能數據,這個命令比前面幾個命令歷史更悠久,它可以收集和顯示較長周期的數據。


    18、將日志文件轉移到內存中

    當一臺機器處于運行中時,最好是將系統日志放在內存中,當系統關閉時再將其復制到硬盤,當你運行一臺開啟了syslog功能的筆記本電腦或移動設備時,ramlog可以幫助你提高系統電池或移動設備閃存驅動器的壽命,使用ramlog的一個好處是,不用再擔心某個守護進程每隔30秒向syslog發送一條消息,放在以前,硬盤必須隨時保持運轉,這樣對硬盤和電池都不好。

    19、先打包,后寫入

    在內存中劃分出固定大小的空間保存日志文件,這意味著筆記本電腦硬盤不用一直保持運轉,只有當某個守護進程需要寫入日志時才運轉,注意ramlog使用的內存空間大小是固定的,否則系統內存會很快被用光,如果筆記本使用固態硬盤,可以分配50-80MB內存給ramlog使用,ramlog可以減少許多寫入周期,極大地提高固態硬盤的使用壽命。

    20、一般調優技巧

    盡可能使用靜態內容替代動態內容,如果你在生成天氣預告,或其它每隔1小時就必須更新的數據,最好是寫一個程序,每隔1小時生成一個靜態的文件,而不是讓用戶運行一個CGI動態地生成報告。

    為動態應用程序選擇最快最合適的API,CGI可能最容易編程,但它會為每個請求產生一個進程,通常,這是一個成本很高,且不必要的過程,FastCGI是更好的選擇,和Apache的mod_perl一樣,都可以極大地提高應用程序的性能。

    linux服務器linux系統
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    "請用root用戶執行此腳本!#最近啟動時間?#運行時間(天)?#相同ID的用戶?#密碼過期(天)?#允許root遠程登錄?#僵尸進程數量?#自啟動服務數量?"系統巡檢腳本:Version $VERSION"
    Linux的應用越來越普遍,且絕大多數嵌入式系統都使用的是Linux系統。但近期,黑客對Linux服務器進行DDoS攻擊的次數飆升,受DDoS攻擊影響的有70多個國家,其中77%的攻擊都發生在中國,最容易受攻擊的國家還有法國和荷蘭。黑客主要是利用C&C 服務器來集中管理并執行DDoS攻擊,Linux服務器便成了其主要的攻擊目標。面對如此猖獗的黑客攻擊,Linux服務器如何做好預防工作呢?部署
    假如你想要搭建一個Linux服務器,并且希望可以長期維護的話,就需要考慮安全性能與速度等眾多因素。一份正確的linux基本安全配置手冊就顯得格外重要。#為刪除你系統上的用戶,用下面的命令:[root@c1gstudio]# userdel username#批量刪除方式#這里刪除"adm lp sync shutdown halt mail news uucp operator games gopher ftp "賬號#如果你開著ftp等服務可以把ftp賬號保留下來。for i in adm lp sync shutdown halt mail news uucp operator games gopher ftp ;do userdel $i ;done
    #更改SSH端口,最好改為10000以上,別人掃描到端口的機率也會下降。防火墻要開放配置好的端口號,如果是阿里云服務器,你還需要去阿里云后臺配置開發相應的端口才可以,否則登不上哦!如果你覺得麻煩,可以不用改。#禁用版本1協議, 因為其設計缺陷, 很容易使密碼被黑掉。關鍵在于環境變量的不同,su -的環境變量更全面。#禁止空密碼登陸。保存,用 uusama 賬戶登錄后,直接獲取的就是 root 帳號的權限。
    Linux是一種開源操作系統,它支持各種硬件平臺,Linux服務器全球知名,它和Windows之間最主要的差異在于,Linux服務器默認情況下一般不提供GUI(圖形用戶界面),而是命令行界面,它的主要目的是高效處理非交互式進程,響應時間并不是那么重要,相反,能夠長時間處理高負載才是最關鍵的。
    當企業發生網絡安全事件時,急需第一時間進行處理,使企業的網絡信息系統在最短時間內恢復正常工作,同時還需進一步查找入侵來源,還原入侵事故過程,給出解決方案與防范措施,為企業挽回或減少經濟損失。 常見的網絡安全事件:
    SSH 是一種廣泛使用的協議,用于安全地訪問 Linux 服務器。但是,不安全的默認配置也會帶來各種安全風險。具有開放 SSH 訪問權限的服務器的 root 帳戶可能存在風險。因此,有必要了解 SSH 安全性。這是在 Linux 上保護 SSH 服務器連接的方法。關閉 root 用戶的服務器訪問是一種防御策略,可以防止攻擊者實現入侵系統的目標。例如,您可以創建一個名為exampleroot的用戶,如下所示:useradd?
    如果你的Linux服務器突然負載暴增,告警短信快發爆你的手機,如何在最短時間內找出Linux性能問題所在?來看Netflix性能工程團隊的這篇博文,看它們通過十條命令在一分鐘內對機器性能問題進行診斷。概述 通過執行以下命令,可以在1分鐘內對系統資源使用情況有個大致的了解。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类