好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Linux 系統優化的一些建議(內核優化)

Linux 系統優化的一些建議(內核優化)

熱門標簽:濟源電話外呼系統怎么樣 宿州防封外呼系統廠家 高德地圖標注在建線路 ai電銷機器人 如何開發 電銷機器人對公司貢獻 山東400電話如何辦理 蘭州語音電銷機器人軟件 智能外呼系統如何部署 電話機器人服務差

關閉swap

如果服務器上有運行數據庫服務或消息中間件服務,請關閉交換分區

echo "vm.swappiness = 0" >> /etc/sysctl.conf
sysctl -p

OOM Killer

一般我們的linux服務都是混部服務的,每個程序申請的物理內存都是共享的;例如物理內存只有1g,啟動2個程序各申請1g是可以的,linux通過這種過度分配的方式來達到內存的充分利用,當程序實際使用內存超出物理內存時,會被系統按照優先級,殺掉一部分程序以確保其它程序的正常運行;為了避免核心服務被殺,可以將進程文件設置為最高優先級。

# 數值越小越不容易被殺
echo -17 > /proc/$pid/oom_score_adj

TCP

因為我們提供的數據庫和一些消息中間件服務都是內網工作的,所以可以針對內網對TCP參數進行一些優化。

  • net.ipv4.tcp_syn_retries

默認值為6,參考值為2。主機作為客戶端,對外發起TCP連接時,即三次握手的第一步,內核發送SYN報文的重試次數,超過這個次數后放棄連接。內網環境通信良好,因此可以適度降低此值

  • net.ipv4.tcp_synack_retries

默認值為5,參考值為2。主機作為服務端,接受TCP連接時,在三次握手的第二步,向客戶端發送SYN+ACK報文的重試次數,超過這個次數后放棄連接。內網環境中可適度降低此值

  • net.ipv4.tcp_timestamps

是否開啟時間戳,開啟后可以更精確地計算RTT,一些其他特性也依賴時間戳字段。

  • net.ipv4.tcp_tw_reuse

默認值為0,建議值為1。是否允許將處于TIME_WAIT狀態的socket用于新的TCP連接。這對于降低TIME_WAIT數量很有效。該參數只有在開啟tcp_timestamps的情況下才會生效。

  • net.ipv4.tcp_tw_recycle

是否開啟TIME_WAIT套接字的快速回收,這是比tcp_tw_reuse更激進的一種方式,它同樣依賴tcp_timestamps選項。強烈建議不要開啟tcp_tw_recycle,原因有兩點,一是TIME_WAIT是十分必要的狀態,避免關閉中的連接與新建連接之間的數據混淆,二是tcp_tw_recycle選項在NAT環境下會導致一些新建連接被拒絕,因為NAT下每個主機存在時差,這體現在套接字中的時間戳字段,服務端會發現某個IP上的本應遞增的時間戳出現降低的情況,時間戳相對降低的報文將被丟棄

  • net.core.somaxconn

默認值為128,參考值為2048。定義了系統中每一個端口上最大的監聽隊列的長度。當服務端監聽了某個端口時,操作系統內部完成對客戶端連接請求的三次握手。這些已建立的連接存儲在一個隊列中,等待accept調用取走。本選項就是定義這個隊列的長度。調大該值,可降低高并發場景下服務端的reject次數。

  • net.ipv4.tcp_max_syn_backlog

客戶端的請求在服務端由兩個隊列進行管理,一種是與客戶端完成連接建立后,等待accept的放到一個隊列,這個隊列的長度由somaxconn參數控制;另一種是正在建立但未完成的連接單獨存放一個隊列,這個隊列的長度由tcp_max_syn_backlog控制;默認128,調到至8192.

  • net.ipv4.tcp_max_tw_buckets

默認值為4096,參考值為100000。定義系統同時保持TIME_WAIT套接字的最大數量,如果超過這個數,則TIME_WAIT套接字將立刻被清除并打印警告信息。如果系統被TIME_WAIT過多問題困擾,則可以調節tcp_max_tw_buckets、tcp_tw_reuse、tcp_timestamps三個選項來緩解。TIME_WAIT狀態產生在TCP會話關閉時主動關閉的一端,如果想從根本上解決問題,則讓客戶端主動關閉連接,而非服務端。

page cache

page cache即系統臟頁,是系統的io緩存,當數據寫入磁盤前會先寫入page cache中,然后異步刷入磁盤;寫緩存可以提升IO的訪問速度,但同時也會增加丟失數據的風險。

從page cache刷到磁盤有以下三種時機:

  • 可用物理內存低于特定閾值時,為了給系統騰出空閑內存;
  • 臟頁駐留時間超過特定閾值時,為了避免臟頁無限期駐留內存;
  • 被用戶的sync()或fsync()觸發。

由系統執行的刷盤有兩種寫入策略:

  • 異步執行刷盤,不阻塞用戶I/O;
  • 同步執行刷盤,用戶I/O被阻塞,直到臟頁低于某個閾值。

在一般情況下,系統先執行第一種策略,當臟頁數據量過大,異步執行來不及完成刷盤時,切換到同步方式。

我們可以通過內核參數調整臟數據的刷盤閾值:

  • vm.dirty_background_ratio,默認值為10。該參數定義了一個百分比。當內存中的臟數據超過這個百分比后,系統使用異步方式刷盤。
  • vm.dirty_ratio,默認值為30。同樣定義了一個百分比,當內存中的臟數據超過這個百分比后,系統使用同步方式刷盤,寫請求被阻塞,直到臟數據低于dirty_ratio。如果還高于dirty_background_ratio,則切換到異步方式刷盤。因此 dirty_ratio 應高于dirty_background_ratio。

除了通過百分比控制,還可以指定過期時間:vm.dirty_expire_centisecs,默認值為3000(30秒),單位為百分之1秒,超過這個時間后,臟數據被異步刷盤。

可以通過下面的命令查看系統當前的臟頁數量:

cat /proc/vmstat |egrep "dirty|writeback"
nr_dirty 951
nr_writeback 0
nr_writeback_temp 0
#輸出顯示有951個臟頁等待寫到磁盤。默認情況下每頁大小為4KB。另外,也可以在/proc/meminfo文件中看到這些信息。

如果數據安全性要求沒有那么高,想要多“cache”一些數據,讓讀取更容易命中cache,則可以增加臟數據占比和過期時間:

vm.dirty_background_ratio = 30
vm.dirty_ratio = 60
vm.dirty_expire_centisecs = 6000

同理,如果不希望因為刷盤導致io被阻,可適當減少異步刷盤的數值,這樣可以讓io更加平滑:

vm.dirty_background_ratio = 5
vm.dirty_ratio = 60

以上就是Linux 系統優化的一些建議(內核優化)的詳細內容,更多關于Linux 系統優化的資料請關注腳本之家其它相關文章!

標簽:畢節 衡水 晉中 巴中 南寧 安陽 佛山 云南

巨人網絡通訊聲明:本文標題《Linux 系統優化的一些建議(內核優化)》,本文關鍵詞  Linux,系統,優化,的,一些,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux 系統優化的一些建議(內核優化)》相關的同類信息!
  • 本頁收集關于Linux 系統優化的一些建議(內核優化)的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 交尾狂いの中出し妊妇さん| 一集黄色片| 国产 在线 天天 精品| 极品色影视| 漂亮干姐姐| avtt亚洲一区中文字幕| 12—14女人做爰毛片| 手机在线播放免费毛片| 人人澡人人澡碰人人看软件| 91精品国产高清久久久久久91| 国产精品秘?福利姬视频| 寡妇高潮一级毛片免费看按摩店| 嗯啊啊高h| 99综合视频| 菠萝蜜视频一级毛片看看| 女同互AV在线观看| 久久精品国产精油按摩| 毛片aaa| 爱丫爱丫兄妹在线影院电视剧| 女主播黄鳝无遮视频22分钟| 黄色网址在线视频| 久久久久中精品中文字幕19 | 91九色??PORNY国产| 国产?刺激?高潮?小说| k频道欧美成人午夜视频综合| 青青草原国产AV一区欧美| 久久妻| 帅哥被gay猛男can哭的视频| 91在线小视频| 久久久无码精品亚洲日韩叫床声| 无码秘?人妻一区二区三| 男男激情漫画无遮挡下拉式| 韩国女主播精品一区二区| 台湾a级片| 麻豆秘?AV视频在线播放| GOGO人体大胆裸体无码| 少妇精油按摩达到高潮| 私人电影网在线天堂观看| 国产AV无码秘?在线| 好男人社区WWW在线观看视频| 高h全肉污文play|