您好,登錄后才能下訂單哦!
這篇文章主要為大家分析了Linux內核調優是怎樣的的相關知識點,內容詳細易懂,操作細節合理,具有一定參考價值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學習“Linux內核調優是怎樣的”的知識吧。
操作系統運行起來后,我們還有很多工作需要跟內核交互,那么如何實現用戶和Linux內核的交互呢,這就用到了內核參數,Linux提供了/proc這樣一個虛擬文件系統,通過它來完成linux內核空間和用戶間之間進行通信,在/proc文件系統中,我們可以將對虛擬文件的讀寫作為與內核中實體進行通信的一種手段,但是與普通文件不同的是,這些虛擬文件的內容都是動態創建的。并且,這些文件雖然使用查看命令查看時會返回大量信息,但文件本身的大小卻顯示為0字節,因為這些都是駐留在內存中的文件。
為了查看及使用上的方便,這些文件通常會按照相關性進行分類存儲于不同的目錄甚至子目錄中,例如:
/proc/sys/net是跟網絡相關的內核參數
/proc/sys/kernel是跟內核相關的內核參數
/proc/sys/vm是跟內存相關的內核參數
/proc/sys/fs是跟文件系統相關的內核參數
此外,/sys下主要存放硬件設備的驅動程序信息,可以通過/sys/block優化磁盤I/O。
下面將分類介紹下linux服務器中常見的內核參數優化策略和技巧。
要觀察當前內核參數的配置,例如要查看/proc/sys/目錄中某個內核參數文件,可以使用cat命令查看內容。這里我們要開啟linux代理轉發功能,可以直接修改內核參數ip_forward對應在/proc下的文件/proc/sys/net/ipv4/ip_forward。用下面命令查看ip_forward文件內容:
[root@liangxu ~]
該虛擬文件默認值0是禁止ip轉發,修改為1即開啟ip轉發功能。修改命令如下:
[root@liangxu ~]
修改后馬上生效,即內核已經打開ip轉發功能。
從上面的操作中可以看到,使用echo和cat可以很方便修改內核參數,幾乎在所有帶/proc文件系統的操作系統上都可以使用,但是有兩個明顯的問題。
echo命令不能檢查參數的一致性。
在重啟系統之后,所有的內核修改都會丟失。
為了解決上面的問題,運維人員應該使用sysctl來修改內核參數。sysctl使用/proc/sys目錄樹中的文件名作為參數。例如,msgmnb內核參數保存在/proc/sys/kernel/msgmnb中,我們可以使用cat來讀取、echo來修改:
[root@liangxul]16384[root@liangxu] [root@liangxu]32768
然而,使用echo很容易出錯,所以我們推薦使用sysctl命令,因為它會修改前檢查數據一致性,例如:
[root@liangxu] kernel.msgmnb = 32768[root@liangxu] kernel.msgmnb = 40960[root@liangxu] kernel.msgmnb = 40960
可以看出,sysctl后面跟上內核參數,就可以查看該內核參數的當前值,要修改此內核參數,執行“sysctl -w”后面跟上內核參數以及新的賦值即可完成,看似完美了,但是還有問題,那就是上面這些sysctl操作,讓系統重啟后,就丟失了,那么,如果想做永久修改,就應該編輯/etc/sysctl.conf文件,在此文件中添加如下內容:
sysctl kernel.msgmnb = 40960
這樣,下次重啟系統的時候系統會自動讀取/etc/sysctl.conf文件,當然,也可以通過如下的命令,不用重啟系統就讓配置立刻生效:
[root@liangxu]
網絡內核參數優化在Linux作為web服務器時,是必須要優化的一個環節,linux上關于網絡內核參數有非常多,合理的內核參數設置,可以最大限度的發揮web服務器的網絡連接性能,下面我們總結了一些web服務器中最常見的內核參數,這些參數的含義以及優化規則都會做一個深入詳細的介紹。
1、/proc/sys/net/ipv4/tcp_syn_retries
此參數表示對于一個新建連接,內核要發送多少個SYN連接請求才決定放棄,此值不應該大于255,默認值是5,建議設置為2。
設置方法:
echo 2 > /proc/sys/net/ipv4/tcp_syn_retries
2、/proc/sys/net/ipv4/tcp_keepalive_time
此參數表示當keepalive啟用的時候,TCP發送keepalive消息的頻度。缺省是7200秒,建議修改為300秒。
普通web服務器建議設置為:
echo 300 >/proc/sys/net/ipv4/tcp_keepalive_time
3、/proc/sys/net/ipv4/tcp_orphan_retries
此參數表示孤兒socket廢棄前重試的次數,重負載web服務器建議調小。
普通web服務器建議設置為“echo 1 >/proc/sys/net/ipv4/tcp_orphan_retries”
4、/proc/sys/net/ipv4/tcp_syncookies
此參數表示開啟SYN Cookies。當出現SYN等待隊列溢出時,啟用cookies來處理,可防范少量SYN攻 擊,默認為0,表示關閉,普通web服務器建議設置為“echo 1 >/proc/sys/net/ipv4/ tcp_syncookies”。
這里提到了SYN攻 擊,它是當前最流行的DoS(拒絕服務)與DDoS(分布式拒絕服務)的方式之一,這是一種利用TCP協議缺陷,發送大量偽造的TCP連接請求,常用假冒的IP或IP號段發來海量的請求連接第一個握手包(SYN包),被攻 擊服務器回應第二個握手包(SYN+ACK包),因為對方是假冒IP,對方永遠收不到包且不會回應第三個握手包。導致被攻 擊服務器保持大量SYN_RECV狀態的“半連接”,并且會重試默認5次回應第二個握手包,直到塞滿TCP等待連接隊列,資源耗盡(CPU滿負荷或內存不足),讓正常的業務請求連接不進來。
針對SYN攻 擊,可以通過啟用SYN Cookie、設置SYN隊列最大長度以及設置SYN+ACK最大重試次數。設置tcp_syncookies為1就是啟用了SYN Cookie。
SYN Cookie的作用是緩解服務器資源壓力。啟用之前,服務器在接到SYN數據包后,會立即分配存儲空間,并隨機化一個數字作為SYN號發送SYN+ACK數據包。然后保存連接的狀態信息等待客戶端確認。而在啟用SYN Cookie之后,服務器不再馬上分配存儲空間,而且通過基于時間種子的隨機數算法設置一個SYN號,替代完全隨機的SYN號。發送完SYN+ACK確認報文之后,清空資源不保存任何狀態信息。直到服務器接到客戶端的最終ACK包。同時,通過Cookie檢驗算法鑒定是否與發出去的SYN+ACK報文序列號匹配,匹配則通過完成握手,失敗則丟棄。
設置SYN隊列最大長度以及設置SYN+ACK最大重試次數兩個參數,下面馬上介紹。
5、/proc/sys/net/ipv4/tcp_max_syn_backlog
此參數表示設置SYN隊列最大長度,默認為1024,加大隊列長度為8192,可以容納更多等待連接的網絡連接數。普通web服務器建議設置為:
“echo 8192 >/proc/sys/net/ipv4/tcp_max_syn_backlog”
tcp_max_syn_backlog是使用服務器的內存資源,換取更大的等待隊列長度,讓攻 擊數據包不至于占滿所有連接而導致正常用戶無法完成握手。所以會消耗系統部分內存資源。
6、/proc/sys/net/ipv4/tcp_synack_retries
net.ipv4.tcp_synack_retries用來降低服務器SYN+ACK報文重試次數(默認是5次),盡快釋放等待資源。
對于遠端的連接請求SYN,內核會發送SYN+ACK數據報文,以確認收到上一個 SYN連接請求包。這是所謂的三次握手( threeway handshake)機制的第二個步驟。此參數是決定內核在放棄連接之前所送出的SYN+ACK的數目。
上面這三個參數與SYN攻 擊的危害一一對應,完完全全是對癥下藥。但這些措施也是雙刃劍,設置過大可能消耗服務器更多的內存資源,甚至影響正常用戶建立TCP連接,因此,需要評估服務器硬件資源和攻 擊力度謹慎設置。
7、/proc/sys/net/ipv4/ tcp_tw_recycle
此參數表示開啟TCP連接中TIME-WAIT sockets的快速回收,默認為0,表示關閉,普通web服務器建議設置為 “echo 1 >/proc/sys/net/ipv4/ tcp_tw_recycle”
這里重點介紹一下TIME-WAIT,這個TIME_WAIT是指在TCP四次揮手過程中,首先調用關閉連接發起的一方,在發送最后一個ACK之后就會進入TIME_WAIT的狀態,過多的TIME_WAIT連接,有什么壞處呢,我們來解釋一下:
在高并發短連接的TCP服務器上,當服務器處理完請求后,會立刻主動正常關閉連接,此時就會出現大量socket處于TIME_WAIT狀態,如果客戶端的并發量持續增高,此時部分客戶端就會顯示連接不上服務器,為什么呢,因為服務器端資源用完了。這里的資源主要指服務器臨時連接端口。
服務器可用的端口有個0~65535這么多,其實這真的很少,再刨除系統和其他服務要用的,剩下的就更少了。而高并發短連接場景可以讓服務器在短時間范圍內同時占用大量端口。
比如訪問一個web頁面,一秒鐘的http短連接處理完成后,在關閉連接之后,這個業務用過的端口會停留在TIME_WAIT狀態幾分鐘,而這幾分鐘,其它HTTP請求過來的時候是無法占用此端口的(典型的占著茅坑不。。。)。如果此時監控服務器的利用率會發現,服務器干正經事的時間和端口(資源)被掛著無法被使用的時間比例是1比幾百,這就導致服務器資源嚴重浪費。
所以對于web服務器進行優化時,要特別注意這個TCP狀態TIME_WAIT,要查看系統的TIME_WAIT狀態,可以使用如下命令組合:
netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn netstat -n |awk '/^tcp/ {print $NF}'|sort|uniq -c|sort -rn netstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}' netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}'netstat -n | awk '/^tcp/ {++arr[$NF]};END {for(k in arr) print k,"\t",arr[k]}' netstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c
通過開啟TIME-WAIT sockets的快速回收,可以在很大程度上減輕web服務器的負擔,所以web服務器中關于TIME-WAIT的優化時必須要做的。
8、/proc/sys/net/ipv4/tcp_tw_reuse
此參數表示開啟重用。允許將TIME-WAIT sockets重新用于新的TCP連接,因為重用連接,比重新建立新連接要便宜得多。此值默認為0,表示關閉;啟用該resuse的同時,必須同時啟用快速回收recycle(即tcp_tw_recycle為1)!
普通web服務器建議設置為“echo 1 >/proc/sys/net/ipv4/ tcp_tw_reuse”。
9、/proc/sys/net/ipv4/tcp_fin_timeout
此參數表示處于TIME_WAIT狀態的連接在回收前必須等待的最小時間。改小它可以加快回收。普通web服務器建議設置為“echo 15 >/proc/sys/net/ipv4/tcp_fin_timeout”。
此參數以及上面兩個參數是對TIME-WAIT優化最常用的配置組合。
10、/proc/sys/net/ipv4/tcp_keepalive_probes
此參數用來減少超時前的探測次數,普通web服務器建議設置為“echo 5>/proc/sys/net/ipv4/ tcp_keepalive_probes”
11、/proc/sys/net/core/netdev_max_backlog
此參數用來設每個網絡接口接收數據包的速率比內核處理這些包的速率快時,允許送到隊列的數據包的最大數目。默認為1000。修改此參數可以優化網絡設備接收隊列,建議設置為:“echo 3000> /proc/sys/net/ipv4/ netdev_max_backlog”
12、/proc/sys/net/core/rmem_max、wmem_max
此兩個參數可以提高TCP的最大緩沖區大小,其中:
rmem_max:表示接收套接字緩沖區大小的最大值(以字節為單位)。
wmem_max:表示發送套接字緩沖區大小的最大值(以字節為單位)。
作為網絡參數的基礎優化,建議設置為:
echo 16777216>/proc/sys/net/core/rmem_maxecho 16777216>/proc/sys/net/core/wmem_max
13、/proc/sys/net/ipv4/tcp_rmem、tcp_wmem
此兩個參數可以提高Linux內核自動對socket緩沖區進行優化的能力,其中:
tcp_rmem:用來配置讀緩沖的大小,第1個值為最小值,第2個值為默認值,第3個值為最大值。
tcp_wmem:用來配置寫緩沖的大小,第1個值為最小值,第2個值為默認值,第3個值為最大值。
作為網絡參數的基礎優化,建議設置為:
echo "4096 87380 16777216">/proc/sys/net/ipv4/tcp_rmem echo "4096 65536 16777216">/proc/sys/net/ipv4/tcp_rmem
14、/proc/sys/net/core/somaxconn
此參數用來設置socket監聽(listen)的backlog上限。什么是backlog呢?backlog就是socket的監聽隊列,當一個請求(request)尚未被處理或建立時,他會進入backlog。而socket server可以一次性處理backlog中的所有請求,處理后的請求不再位于監聽隊列中。當server處理請求較慢,以至于監聽隊列被填滿后,新來的請求會被拒絕。默認為128。作為網絡參數的基礎優化,建議設置為:
echo 4096 >/proc/sys/net/core/somaxconn
1、/proc/sys/kernel/panic
此參數用來設置如果發生“內核嚴重錯誤(kernel panic)”,則內核在重新引導之前等待的時間(以秒為單位)。默認值為0,表示在發生內核嚴重錯誤時將禁止重新引導,建議設置為1,也就是內核故障后1秒后自動重啟。
設置方法為:echo 1 >/proc/sys/kernel/panic
2、/proc/sys/kernel/pid_max
此參數用來設置Linux下進程數量的最大值,默認是32768,正常情況下是夠用的,當我們跑重量任務時,會不夠用,最終導致內存無法分配的錯誤,所以可以適當增加,方法如下:
[root@localhost ~]32768[root@localhost ~] [root@localhost ~]196608
3、/proc/sys/kernel/ctrl-alt-del
該文件有一個二進制值,該值控制系統在接收到ctrl+alt+delete按鍵組合時如何反應。這兩個值分別是:
0值,表示捕獲ctrl+alt+delete,并將其送至 init 程序;這將允許系統可以安全地關閉和重啟,就好象輸入shutdown命令一樣。
1值,表示不捕獲ctrl+alt+delete。
建議設置為1,可以防止意外按下ctrl+alt+delete導致系統非正常重啟。
4、/proc/sys/kernel/core_pattern
此參數用來設置core文件保存位置或文件名,只有文件名時,則保存在應用程序運行的目錄下,配置方法:echo “core.%e.%p” >/proc/sys/kernel/core_pattern,其中%e表示程序名, %p表示進程id。
1、 /proc/sys/vm/dirty_background_ratio
這個參數指定了當文件系統緩存臟數據數量達到系統內存百分之多少時(如10%)就會觸發pdflush/flush/kdmflush等后臺回寫進程運行,將一定緩存的臟頁異步地刷入磁盤;例如,服務器內存32G,那么有3.2G的內存可以用來緩存臟數據,超過3.2G的話就pdflush/flush/kdmflush進程就會來清理它。
缺省設置:10
2、 /proc/sys/vm/dirty_ratio
這個參數指定了當文件系統緩存臟數據數量達到系統內存百分之多少時(如15%),系統不得不開始處理緩存臟頁(因為此時臟數據數量已經比較多,為了避免數據丟失需要將一定臟數據刷入磁盤);如果觸發了這個設置,那么新的IO請求將會被阻擋,直到臟數據被寫進磁盤。這是造成IO卡頓的重要原因,但這也是保證內存中不會存在過量臟數據的保護機制。
注意這個參數和dirty_background_ratio參數的區別,dirty_background_ratio是臟數據百分比的一個軟限制,而dirty_ratio是一個臟數據百分比硬限制,在參數設置上,dirty_ratio一定要大于或等于dirty_background_ratio的值。
在磁盤寫入不是很頻繁的場景,適當增大此值,可以極大提高文件系統的寫性能。但是,如果是持續、恒定的寫入場合時,應該降低其數值。
缺省設置:20
3、 /proc/sys/vm/dirty_expire_centisecs
該文件表示如果臟數據在內存中駐留時間超過該值,pdflush進程在下一次將把這些數據寫回磁盤。這個參數聲明Linux內核寫緩沖區里面的數據多“舊”了之后,pdflush進程就開始考慮寫到磁盤中去。單位是1/100秒。缺省是 3000,也就是30秒的數據就算舊了,將會刷新磁盤。對于特別重載的寫操作來說,這個值適當縮小也是好的,但也不能縮小太多,因為縮小太多也會導致IO提高太快。
缺省設置:3000(1/100秒)
4、 /proc/sys/vm/dirty_writeback_centisecs
這個參數控制內核的臟數據刷新進程pdflush的運行間隔。單位是1/100秒。缺省數值是500,也就是5秒。如果我們的系統是持續地寫入動作,那么建議降低這個數值比較好,這樣可以把尖峰的寫操作削平成多次寫操作,相反,如果我們的系統是短期地尖峰式的寫操作,并且寫入數據不大(幾十M/次)且內存又比較富裕,那么應該增大此數值
缺省設置:500(1/100秒)
5、/proc/sys/vm/vfs_cache_pressure
該文件表示內核回收用于directory和inode cache內存的傾向;缺省值100表示內核將根據pagecache和swapcache,把directory和inode cache保持在一個合理的百分比;降低該值低于100,將導致內核傾向于保留directory和inode cache;增加該值超過100,將導致內核傾向于回收directory和inode cache。此參數一般情況下不需要調整,只有在極端場景下才建議進行調整。
缺省設置:100
6、 /proc/sys/vm/min_free_kbytes
該文件表示強制Linux VM最低保留多少空閑內存(Kbytes)。
缺省設置:90112(88M物理內存,centos7版本)
7、 /proc/sys/vm/nr_pdflush_threads
該文件表示當前正在運行的pdflush進程數量,在I/O負載高的情況下,內核會自動增加更多的pdflush進程。
8、 /proc/sys/vm/overcommit_memory
該文件指定了內核針對內存分配的策略,其值可以是0、1、2。
0, 表示內核將檢查是否有足夠的可用內存供應用進程使用;如果有足夠的可用內存,內存申請允許;否則,內存申請失敗,并把錯誤返回給應用進程。
1, 表示內核允許分配所有的物理內存,而不管當前的內存狀態如何。
2, 表示內核允許分配超過所有物理內存和交換空間總和的內存。
此參數,需要根據服務器運行的具體應用來優化,比如服務器運行的是redis內存數據庫,那么推薦設置為1,如果是web類應用,建議保持默認即可。
9、/proc/sys/vm/panic_on_oom
此參數表示內存不夠時內核是否直接panic(恐慌), 默認為0,表示當內存耗盡時,內核會觸發OOM killer殺掉最耗內存的進程。如果設置為1表示在OOM時系統會panic(恐慌),Linux Kernel panic正如其名,表示linux kernel不知道如何走了,此時它會盡可能把此時能獲取的全部信息都打印出來。有時候為了不讓系統自動kill掉進程,就需要設置此值為1。
下面簡單介紹下OOM killer機制:
當系統物理內存和交換空間都被用完時,如果還有進程來申請內存,內核將觸發OOM killer,當發生OOM時系統的行為會基于 “cat /proc/sys/vm/panic_on_oom”的值決定,
這個值為0表示在OOM時系統執行OOM Killer,那么系統是怎么選擇一個進程殺掉呢,選擇的標準就是殺掉最少數量的進程同時釋放出最大數量的內存,要達到這個目標, Kernel維護著一份oom_score數據,它包含各個進程的oom_score,我們可以在/proc/${pid}/oom_score中查看各個進程的oom_score值(該值越大,越容易被殺掉),最終的oom_score值會參照/proc/
因此,我們說,影響OOM killer機制的因素有兩個:
/proc/[pid]/oom_score:當前該pid進程被kill的分數,越高的分數意味著越可能被kill,這個數值是根據oom_adj運算后的結果,是oom_killer的主要參考。
/proc/[pid]/oom_adj:表示該pid進程被oom killer殺掉的權重,介于[-17,15]之間,越高的權重,意味著更可能被oom killer選中,-17表示禁止被kill掉。
10、/proc/sys/vm/swappiness
此參數表示使用swap分區的幾率。swappiness=0的時候表示最大限度使用物理內存,然后才是swap空間,swappiness=100的時候表示積極的使用swap分區,并且把內存上的數據及時的搬運到swap空間里面。linux的基本默認設置為60,表示你的物理內存在使用到100-60=40%的時候,就開始出現有交換分區的使用。此值在一些內存數據庫服務器上需要設置的足夠小,比如redis、hbase機器上,應該設置0-10之間,表示最大限度使用物理內存。
缺省設置:60
1、/proc/sys/fs/file-max
該參數指定了可以分配的文件句柄的最大數目。如果用戶得到的錯誤消息聲明由于打開文件數已經達到了最大值,從而他們不能打開更多文件,則可能需要增加該值。
設置方法為:echo “10485750”>/proc/sys/fs/file-max
2、/proc/sys/fs/inotify/max_user_watches
Linux下Rsync+inotify-tools實現數據實時同步中有一個重要的配置就是設置Inotify的max_user_watches值,如果不設置,當遇到大量文件的時候就會出現出錯的情況。
可以通過如下方式增加此值:
echo “8192000”>/proc/sys/fs/inotify/max_user_watches
關于Linux系統內核基礎優化參數就介紹這么多,對于一個web服務器來說,這些都是必須要做的基礎優化,至于更多的優化,要結合應用環境特點,具體問題具體對待。
最后,要將設置好的內核參數永久生效,需要修改/etc/sysctl.conf文件。首先檢查sysctl.conf文件,如果已經包含需要修改的參數,則修改該參數的值,如果沒有需要修改的參數,在sysctl.conf文件中添加該參數即可。
線上環境建議將所有要設置的內核參數加入到/etc/sysctl.conf文件中。
下面是我們一個線上web服務器配置參考,此配置可以支撐每天1億的請求量(服務器硬件為16核32GB內存):
net.ipv4.conf.lo.arp_ignore = 1net.ipv4.conf.lo.arp_announce = 2net.ipv4.conf.all.arp_ignore = 1net.ipv4.conf.all.arp_announce = 2net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_fin_timeout = 10net.ipv4.tcp_max_syn_backlog = 20000net.core.netdev_max_backlog = 32768net.core.somaxconn = 32768net.core.wmem_default = 8388608net.core.rmem_default = 8388608net.core.rmem_max = 16777216net.core.wmem_max = 16777216net.ipv4.tcp_timestamps = 0net.ipv4.tcp_synack_retries = 2net.ipv4.tcp_syn_retries = 2net.ipv4.tcp_syncookies = 1net.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_mem = 94500000 915000000 927000000net.ipv4.tcp_max_orphans = 3276800net.ipv4.tcp_fin_timeout = 10net.ipv4.tcp_keepalive_time = 120net.ipv4.ip_local_port_range = 1024 65535net.ipv4.tcp_max_tw_buckets = 80000net.ipv4.tcp_keepalive_time = 120net.ipv4.tcp_keepalive_intvl = 15net.ipv4.tcp_keepalive_probes = 5net.ipv4.conf.lo.arp_ignore = 1net.ipv4.conf.lo.arp_announce = 2net.ipv4.conf.all.arp_ignore = 1net.ipv4.conf.all.arp_announce = 2net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_fin_timeout = 10net.ipv4.tcp_max_syn_backlog = 20000net.core.netdev_max_backlog = 32768net.core.somaxconn = 32768net.core.wmem_default = 8388608net.core.rmem_default = 8388608net.core.rmem_max = 16777216net.core.wmem_max = 16777216net.ipv4.tcp_timestamps = 0net.ipv4.tcp_synack_retries = 2net.ipv4.tcp_syn_retries = 2net.ipv4.tcp_mem = 94500000 915000000 927000000net.ipv4.tcp_max_orphans = 3276800net.ipv4.ip_local_port_range = 1024 65535net.ipv4.tcp_max_tw_buckets = 500000net.ipv4.tcp_keepalive_time = 60net.ipv4.tcp_keepalive_intvl = 15net.ipv4.tcp_keepalive_probes = 5net.nf_conntrack_max = 2097152
這個內核參數優化例子,可以作為一個web系統的優化標準,但并不保證適應任何環境。
關于“Linux內核調優是怎樣的”就介紹到這了,更多相關內容可以搜索億速云以前的文章,希望能夠幫助大家答疑解惑,請多多支持億速云網站!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。