如何提高Linux伺服器效能
如何提高Linux伺服器效能,Linux是一種開源作業系統,它支援各種硬體平臺,Linux伺服器全球知名,它和Windows之間最主要的差異在於,Linux伺服器預設情況下一般不提供GUI(圖形使用者介面),而是命令列介面,它的主要目的是高效處理非互動式程式,響應時間並不是那麼重要,相反,能夠長時間處理高負載才是最關鍵的。
Linux高可用伺服器叢集解決方案讓IT系統管理員可以從容應對許多常見的硬體和軟體故障,允許多臺計算機一起工作,為關鍵服務正常執行提供保障,系統管理員可以不中斷服務執行維護和升級。
Linux伺服器有各種用途,如Web伺服器或分支機構內部伺服器,CMS或CRS伺服器,檔案伺服器(為Windows和/或Linux使用者服務),VoIP電話伺服器,郵件或域名伺服器,資料庫伺服器,雲端計算配置中的基礎設施節點等。
Linux功能豐富、強大、靈活,你可以用它完成各種任務,在這篇文章中,我們將討論一些提高Linux伺服器效能的技巧。
01、為磁碟I/O調整Linux核心電梯演算法
在選擇檔案系統後,有一些核心和掛載選項可能會影響到它的效能表現,其中一個核心設定是電梯演算法,透過調整電梯演算法,系統可以平衡低延遲需求,收集足夠的資料,以有效地組織對磁碟的讀和寫請求。
02、禁用不必要的守護程式
每臺伺服器上都執行著許多守護程式或服務,而具有諷刺意味的是,有很多通常不是必需的,這些服務沒有發揮作用,但卻消耗了寶貴的記憶體和CPU時間。此外,它們可能將伺服器置於危險境地,多執行一個服務就等於多向駭客開啟一扇長驅直入的門,因此,你應該將它們從伺服器移除,禁用它們最大的好處是可以加快啟動時間,釋放記憶體。另外,你可以減少CPU需要處理的程式數,禁用它們的另一個好處是增強伺服器的安全性,因為越少的守護程式意味著可被攻擊和利用的漏洞越少。
下面是一些應該被禁用的Linux守護程式,預設情況下,它們都是自動執行的:
序號 守護程式 描述
1 Apmd 高階電源管理守護程式
2 Nfslock 用於NFS檔案鎖定
3 Isdn ISDN Moderm支援
4 Autofs 在後臺自動掛載檔案系統(如自動掛載CD-ROM)
5 Sendmail 郵件傳輸代理
6 Xfs X Window的字型伺服器
03、關掉GUI
一般說來,Linux伺服器是不需要GUI的,所有管理任務都可以在命令列下完成,因此最好關掉GUI,重定向X顯示或透過一個Web瀏覽器介面顯示。為了禁用GUI,“init level(啟動級別)”應該被設定為3(命令列登入),而不是5(圖形登入),如果需要GUI,可以隨時執行startx進入圖形使用者介面。
04、清理不需要的模組或功能
在伺服器軟體包中有太多被啟動的功能或模組實際上是不需要的(如Apache中的許多功能模組),仔細檢視Apache配置檔案,確定FrontPage支援或其它額外的模組是否真的要用到,如果不需要,應該毫不猶豫地從伺服器禁用掉,這樣有助於提高系統記憶體可用量,騰出更多資源給那些真正需要的軟體,讓它們執行得更快。
05、禁用控制皮膚
在Linux中,有許多流行的控制皮膚,如Cpanel,Plesk,Webmin和phpMyAdmin等,相信每個Linux初級使用者都很喜歡這些控制皮膚,但是,禁用掉這些軟體包可以釋放出大約120MB記憶體,因此,我強烈建議禁用掉這些控制皮膚,除非它們真的需要用到,它們可以透過PHP指令碼(儘管有些不安全),或命令列命令啟用,這樣做後,記憶體使用量大約可以下降30-40%。
06、改善Linux Exim伺服器效能
有許多種方法改善伺服器的Exim效能,其中一個辦法是使用DNS快取守護程式,它可以降低解析DNS記錄需要的頻寬和CPU時間,DNS快取透過消除每次都從根節點開始查詢DNS記錄的需求,從而改善網路效能,Djbdns是一個非常強大的DNS伺服器,它具有DNS快取功能,Djbdns比BIND DNS伺服器更安全,效能更好,可以直接透過 http:// cr.yp.to/ 下載,或透過Red Hat提供的軟體包獲得。
07、使用AES256增強gpg檔案加密安全
為了提高備份檔案或敏感資訊的安全,許多Linux系統管理員都會使用gpg進行加密,在使用gpg時,最好指定gpg使用AES256加密演算法,AES256使用256位金鑰,它是一個開放的加密演算法,美國國家安全域性(NSA)都使用它保護絕密資訊,沒有什麼比它更安全的了。
08、遠端備份服務安全
安全是選擇遠端備份服務最重要的因素,大多數系統管理員都害怕兩件事:(駭客)可以刪除備份檔案,不能從備份恢復系統。
為了保證備份檔案100%的安全,備份服務公司提供遠端備份伺服器,使用scp指令碼或RSYNC透過SSH傳輸資料,這樣,沒有人可以直接進入和訪問遠端系統,因此,也沒有人可以從備份服務刪除資料。在選擇遠端備份服務提供商時,最好從多個方面瞭解其服務強壯性,如果可以,可以親自測試一下。
09、更新預設核心引數設定
為了順利和成功執行企業應用程式,如資料庫伺服器,可能需要更新一些預設的核心引數設定,例如,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%的記憶體。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70023145/viewspace-2923458/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 伺服器的效能如何提高伺服器
- 如何提高Linux伺服器安全性?Linux伺服器
- 如何提高datapump操作效能
- 如何提高 Ruby On Rails 效能AI
- 怎樣提高伺服器的效能伺服器
- 如何提高前端效能——字型篇前端
- 如何提高 Ruby On Rails 的效能?AI
- 提高 Linux 上 socket 效能(轉)Linux
- 提高Linux上socket效能(轉)Linux
- Jtti:如何提高Linux伺服器的安全性?JttiLinux伺服器
- 如何快速排查Linux伺服器效能問題Linux伺服器
- GameMode:提高 Linux 遊戲效能的工具GAMLinux遊戲
- 如何提高python程式的效能Python
- 如何提高 Java 中鎖的效能Java
- 小措施提高Linux伺服器安全Linux伺服器
- 如何提高你的 React 應用的效能React
- 如何藉助 NoSQL 提高 JPA 應用效能SQL
- 如何提高web伺服器安全性Web伺服器
- 香港伺服器的效率要如何提高?伺服器
- 提高SQL效能SQL
- 如何利用Linux伺服器提高Web介面的身份認證安全性Linux伺服器Web
- Go1.13 defer 的效能是如何提高的?Go
- 如何使用 Set 來提高程式碼的效能
- Gbase8d如何提高查詢效能?
- 請教如何提高查詢系統的效能?
- 提供Linux伺服器效能技巧Linux伺服器
- Linux伺服器效能評估Linux伺服器
- 如何提高代理伺服器的安全性?伺服器
- 伺服器如何提供效能呢?伺服器
- 如何測試伺服器效能?伺服器
- Linux中的getrandom()方法效能提高了8450% - PhoronixLinuxrandom
- 雙埠SRAM如何提高系統的整體效能
- 如何提高寶塔安全性?【伺服器篇】伺服器
- 無水乾貨-如何快速分析Linux伺服器的效能問題Linux伺服器
- 伺服器效能好壞如何分辨?伺服器
- 提高Linux系統效能加速網路應用程式(轉)Linux
- MySQL 提高Insert效能MySql
- 提高SQL查詢效能SQL