chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux網(wǎng)絡(luò)性能調(diào)優(yōu)方案

馬哥Linux運維 ? 來源:馬哥Linux運維 ? 2025-08-06 18:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Linux網(wǎng)絡(luò)性能調(diào)優(yōu):TCP、IP協(xié)議棧參數(shù)優(yōu)化實踐

前言:網(wǎng)絡(luò)性能優(yōu)化的必要性

在當今高并發(fā)、大流量的互聯(lián)網(wǎng)環(huán)境下,網(wǎng)絡(luò)性能往往成為系統(tǒng)的瓶頸。作為一名資深運維工程師,我在生產(chǎn)環(huán)境中遇到過無數(shù)次因為TCP/IP參數(shù)配置不當導(dǎo)致的性能問題。今天分享一套完整的Linux網(wǎng)絡(luò)性能調(diào)優(yōu)方案,幫助大家徹底解決網(wǎng)絡(luò)性能瓶頸。

網(wǎng)絡(luò)性能問題的常見表現(xiàn)

生產(chǎn)環(huán)境真實案例

?高并發(fā)連接數(shù)場景:電商大促期間,服務(wù)器連接數(shù)激增,出現(xiàn)大量TIME_WAIT狀態(tài)

?大文件傳輸場景:數(shù)據(jù)備份時網(wǎng)絡(luò)吞吐量嚴重不足,傳輸效率低下

?微服務(wù)調(diào)用場景:服務(wù)間頻繁調(diào)用出現(xiàn)延遲抖動,響應(yīng)時間不穩(wěn)定

這些問題的根源往往在于Linux內(nèi)核默認的TCP/IP參數(shù)無法滿足高性能需求。

TCP協(xié)議棧核心參數(shù)優(yōu)化

1. TCP連接管理優(yōu)化

# /etc/sysctl.conf 配置文件

# TCP連接隊列長度優(yōu)化
net.core.somaxconn = 65535          # 增加監(jiān)聽隊列長度
net.core.netdev_max_backlog = 30000     # 網(wǎng)卡接收隊列長度
net.ipv4.tcp_max_syn_backlog = 65535     # SYN隊列長度

# TIME_WAIT狀態(tài)優(yōu)化
net.ipv4.tcp_tw_reuse = 1          # 允許重用TIME_WAIT socket
net.ipv4.tcp_fin_timeout = 30        # 減少FIN_WAIT_2狀態(tài)時間
net.ipv4.tcp_max_tw_buckets = 10000     # 限制TIME_WAIT數(shù)量

# 連接?;顧C制
net.ipv4.tcp_keepalive_time = 600      # 開始發(fā)送keepalive探測包的時間
net.ipv4.tcp_keepalive_probes = 3      # keepalive探測包數(shù)量 
net.ipv4.tcp_keepalive_intvl = 15      # 探測包發(fā)送間隔

2. TCP緩沖區(qū)優(yōu)化

# TCP接收/發(fā)送緩沖區(qū)優(yōu)化
net.core.rmem_default = 262144        # 默認接收緩沖區(qū)大小
net.core.rmem_max = 16777216         # 最大接收緩沖區(qū)大小
net.core.wmem_default = 262144        # 默認發(fā)送緩沖區(qū)大小
net.core.wmem_max = 16777216         # 最大發(fā)送緩沖區(qū)大小

# TCP套接字緩沖區(qū)自動調(diào)節(jié)
net.ipv4.tcp_rmem = 4096 87380 16777216   # TCP讀取緩沖區(qū) min default max
net.ipv4.tcp_wmem = 4096 65536 16777216   # TCP寫入緩沖區(qū) min default max
net.ipv4.tcp_mem = 94500000 915000000 927000000# TCP內(nèi)存分配 low pressure high

# 啟用TCP窗口縮放
net.ipv4.tcp_window_scaling = 1       # 支持更大的TCP窗口

3. TCP擁塞控制優(yōu)化

# 擁塞控制算法選擇
net.ipv4.tcp_congestion_control = bbr     # 使用BBR算法(推薦)
# 其他選項:cubic, reno, bic

# 快速重傳和恢復(fù)
net.ipv4.tcp_frto = 2             # F-RTO算法檢測虛假超時
net.ipv4.tcp_dsack = 1            # 啟用DSACK支持
net.ipv4.tcp_fack = 1             # 啟用FACK擁塞避免

# TCP慢啟動閾值
net.ipv4.tcp_slow_start_after_idle = 0    # 禁用空閑后慢啟動

IP協(xié)議棧參數(shù)優(yōu)化

1. IP層處理優(yōu)化

# IP轉(zhuǎn)發(fā)和路由優(yōu)化
net.ipv4.ip_forward = 0            # 非路由器設(shè)備關(guān)閉轉(zhuǎn)發(fā)
net.ipv4.conf.default.rp_filter = 1     # 啟用反向路徑過濾
net.ipv4.conf.all.rp_filter = 1

# IP分片處理
net.ipv4.ipfrag_high_thresh = 262144     # IP分片高閾值
net.ipv4.ipfrag_low_thresh = 196608      # IP分片低閾值
net.ipv4.ipfrag_time = 30          # 分片重組超時時間

# ICMP優(yōu)化
net.ipv4.icmp_echo_ignore_broadcasts = 1   # 忽略廣播ICMP
net.ipv4.icmp_ignore_bogus_error_responses = 1# 忽略錯誤ICMP響應(yīng)

2. 端口范圍優(yōu)化

# 本地端口范圍擴展
net.ipv4.ip_local_port_range = 1024 65535   # 可用端口范圍

# UDP端口優(yōu)化
net.ipv4.udp_mem = 94500000 915000000 927000000
net.ipv4.udp_rmem_min = 8192
net.ipv4.udp_wmem_min = 8192

網(wǎng)絡(luò)隊列和中斷優(yōu)化

1. 網(wǎng)絡(luò)設(shè)備隊列優(yōu)化

# 增加網(wǎng)絡(luò)設(shè)備處理隊列
echo'echo 4096 > /proc/sys/net/core/netdev_budget'>> /etc/rc.local
echo'echo 2 > /proc/sys/net/core/netdev_budget_usecs'>> /etc/rc.local

# RPS/RFS優(yōu)化(多核CPU負載均衡)
echo'f'> /sys/class/net/eth0/queues/rx-0/rps_cpus # 根據(jù)CPU核數(shù)調(diào)整

2. 中斷優(yōu)化腳本

#!/bin/bash
# network_irq_balance.sh - 網(wǎng)絡(luò)中斷均衡腳本

# 獲取網(wǎng)卡中斷號
IRQ_LIST=$(grep eth0 /proc/interrupts | awk -F:'{print $1}'| xargs)

# 綁定中斷到不同CPU核心
CPU_COUNT=$(nproc)
i=0

forirqin$IRQ_LIST;do
  cpu_mask=$((1<< (i % CPU_COUNT)))
? ??printf"%x"$cpu_mask?> /proc/irq/$irq/smp_affinity
 echo"IRQ$irq-> CPU$((i % CPU_COUNT))"
  ((i++))
done

高并發(fā)場景專項優(yōu)化

1. 大連接數(shù)優(yōu)化

# 文件描述符限制
echo'* soft nofile 1048576'>> /etc/security/limits.conf
echo'* hard nofile 1048576'>> /etc/security/limits.conf

# 進程數(shù)限制 
echo'* soft nproc 1048576'>> /etc/security/limits.conf
echo'* hard nproc 1048576'>> /etc/security/limits.conf

# systemd服務(wù)限制
echo'DefaultLimitNOFILE=1048576'>> /etc/systemd/system.conf
echo'DefaultLimitNPROC=1048576'>> /etc/systemd/system.conf

2. 內(nèi)存管理優(yōu)化

# 虛擬內(nèi)存管理
vm.swappiness = 10              # 降低swap使用
vm.dirty_ratio = 15              # 臟頁寫回比例
vm.dirty_background_ratio = 5         # 后臺寫回比例
vm.overcommit_memory = 1           # 允許內(nèi)存過量分配

性能監(jiān)控和驗證

1. 關(guān)鍵指標監(jiān)控腳本

#!/bin/bash
# network_monitor.sh - 網(wǎng)絡(luò)性能監(jiān)控

echo"=== 網(wǎng)絡(luò)連接狀態(tài)統(tǒng)計 ==="
ss -s

echo-e"
=== TCP連接狀態(tài)分布 ==="
ss -tan | awk'NR>1{state[$1]++} END{for(i in state) print i, state[i]}'

echo-e"
=== 網(wǎng)絡(luò)吞吐量 ==="
sar -n DEV 1 1 | grep -E"eth0|Average"

echo-e"
=== 內(nèi)存使用情況 ==="
free -h

echo-e"
=== 系統(tǒng)負載 ==="
uptime

2. 壓測驗證命令

# 使用wrk進行HTTP壓測
wrk -t12 -c400 -d30s --latency http://your-server-ip/

# 使用iperf3進行網(wǎng)絡(luò)帶寬測試
iperf3 -s # 服務(wù)端
iperf3 -c server-ip -t 60 -P 10 # 客戶端

# TCP連接數(shù)壓測
ab -n 100000 -c 1000 http://your-server-ip/

實戰(zhàn)案例:電商系統(tǒng)優(yōu)化

優(yōu)化前后對比數(shù)據(jù)

指標 優(yōu)化前 優(yōu)化后 提升幅度
QPS 15,000 45,000 200%
平均延遲 120ms 35ms 71%
99%延遲 800ms 150ms 81%
并發(fā)連接數(shù) 10,000 50,000 400%
CPU使用率 85% 45% -47%

關(guān)鍵優(yōu)化點

1.BBR擁塞控制:啟用后網(wǎng)絡(luò)吞吐量提升40%

2.TCP緩沖區(qū)調(diào)優(yōu):大幅減少網(wǎng)絡(luò)延遲抖動

3.連接復(fù)用優(yōu)化:TIME_WAIT狀態(tài)減少90%

4.中斷均衡:多核CPU利用率提升明顯

最佳實踐建議

1. 分場景調(diào)優(yōu)策略

高并發(fā)Web服務(wù)器

# 重點優(yōu)化連接數(shù)和快速釋放
net.ipv4.tcp_tw_reuse = 1
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 65535

大文件傳輸服務(wù)器

# 重點優(yōu)化緩沖區(qū)和窗口大小
net.core.rmem_max = 134217728
net.core.wmem_max = 134217728
net.ipv4.tcp_window_scaling = 1

數(shù)據(jù)庫服務(wù)器

# 重點優(yōu)化連接?;詈头€(wěn)定性
net.ipv4.tcp_keepalive_time = 300
net.ipv4.tcp_retries2 = 5

2. 生產(chǎn)環(huán)境部署流程

1.測試環(huán)境驗證:先在測試環(huán)境應(yīng)用配置

2.灰度發(fā)布:選擇部分服務(wù)器先行部署

3.監(jiān)控觀察:密切關(guān)注關(guān)鍵性能指標

4.全量部署:確認無問題后全面推廣

3. 配置持久化

# 應(yīng)用所有sysctl配置
sysctl -p

# 驗證配置是否生效
sysctl net.ipv4.tcp_congestion_control
sysctl net.core.somaxconn

# 設(shè)置開機自動生效
echo'sysctl -p'>> /etc/rc.local
chmod+x /etc/rc.local

注意事項和常見陷阱

1. 參數(shù)調(diào)優(yōu)誤區(qū)

?盲目增大緩沖區(qū):可能導(dǎo)致內(nèi)存不足

?過度優(yōu)化TIME_WAIT:可能引起端口耗盡

?忽略業(yè)務(wù)特性:不同業(yè)務(wù)需要不同的參數(shù)策略

2. 回滾預(yù)案

# 備份當前配置
cp/etc/sysctl.conf /etc/sysctl.conf.backup.$(date+%Y%m%d)

# 快速回滾腳本
cat> /root/network_rollback.sh <

總結(jié)

通過系統(tǒng)性的TCP/IP協(xié)議棧參數(shù)調(diào)優(yōu),我們可以顯著提升Linux服務(wù)器的網(wǎng)絡(luò)性能。關(guān)鍵在于:

1.理解業(yè)務(wù)特性:根據(jù)實際業(yè)務(wù)場景選擇合適的優(yōu)化策略

2.逐步調(diào)優(yōu):避免一次性修改過多參數(shù),便于問題定位

3.持續(xù)監(jiān)控:建立完善的監(jiān)控體系,及時發(fā)現(xiàn)性能問題

4.測試驗證:每次調(diào)優(yōu)后都要進行充分的性能測試

希望這篇文章能幫助大家在生產(chǎn)環(huán)境中更好地進行網(wǎng)絡(luò)性能調(diào)優(yōu)。如果你在實踐中遇到問題,歡迎在評論區(qū)交流討論!

關(guān)于作者:資深運維工程師,專注于高性能系統(tǒng)架構(gòu)和性能調(diào)優(yōu),在大型互聯(lián)網(wǎng)公司有多年運維實戰(zhàn)經(jīng)驗。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11575

    瀏覽量

    216593
  • 網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    14

    文章

    8019

    瀏覽量

    92177
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1412

    瀏覽量

    82560

原文標題:服務(wù)器網(wǎng)絡(luò)慢到懷疑人生?Linux TCP/IP調(diào)優(yōu)實戰(zhàn),性能提升200%+

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    史上最全性能調(diào)優(yōu)總結(jié)

    在說什么是性能調(diào)優(yōu)之前,我們先來說一下,計算機的體系結(jié)構(gòu)。
    的頭像 發(fā)表于 05-13 08:57 ?6945次閱讀
    史上最全<b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>總結(jié)

    HBase性能調(diào)優(yōu)概述

    HBase性能調(diào)優(yōu)
    發(fā)表于 07-03 11:35

    基于全HDD aarch64服務(wù)器的Ceph性能調(diào)優(yōu)實踐總結(jié)

    提升吞吐率。- Linux內(nèi)核中有很多網(wǎng)絡(luò)相關(guān)的參數(shù),我們可以根據(jù)不同的應(yīng)用場景,不同的塊大小來調(diào)整這些網(wǎng)絡(luò)參數(shù),以達到最優(yōu)的性能。- 中斷也是網(wǎng)絡(luò)
    發(fā)表于 07-05 14:26

    infosphere CDC 性能調(diào)優(yōu)及MC性能指標監(jiān)控

    infosphere CDC 性能調(diào)優(yōu)及MC性能指標監(jiān)控
    發(fā)表于 09-07 09:26 ?4次下載
    infosphere CDC <b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>及MC<b class='flag-5'>性能</b>指標監(jiān)控

    infosphere CDC性能調(diào)優(yōu)的文檔

    infosphere CDC性能調(diào)優(yōu)的文檔
    發(fā)表于 09-07 09:30 ?7次下載
    infosphere CDC<b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>的文檔

    如何對電機進行調(diào)優(yōu)?調(diào)優(yōu)的好處是什么?

    如何自動對電機進行調(diào)優(yōu)
    的頭像 發(fā)表于 08-22 00:03 ?3669次閱讀

    Linux查看資源使用情況和性能調(diào)優(yōu)常用的命令

    ,包括進程、線程、程序堆棧、內(nèi)存、Swap、CPU調(diào)度、內(nèi)存調(diào)度、網(wǎng)絡(luò)連接和IO讀寫等。 本文介紹了Linux查看資源使用情況和性能調(diào)優(yōu)常用
    的頭像 發(fā)表于 11-12 17:54 ?4752次閱讀

    Linux用電功耗調(diào)優(yōu)的筆記分享

    整理一些Linux用電功耗調(diào)優(yōu)的筆記,分享給小伙伴,關(guān)于用電調(diào)優(yōu)個人覺得
    的頭像 發(fā)表于 06-23 15:19 ?5152次閱讀

    linux網(wǎng)絡(luò)棧監(jiān)控及調(diào)優(yōu):數(shù)據(jù)接收

    linux 網(wǎng)絡(luò)棧的監(jiān)控及調(diào)優(yōu)上沒有捷徑可言,如果你想做有效的調(diào)優(yōu),就必須搞清楚各個系統(tǒng)之間
    的頭像 發(fā)表于 03-25 16:44 ?2275次閱讀

    Linux性能調(diào)優(yōu)常見工具和堆棧解析

    ? Linux系統(tǒng)性能調(diào)優(yōu)涉及多個方面,包括內(nèi)核參數(shù)調(diào)整、文件系統(tǒng)優(yōu)化、網(wǎng)絡(luò)設(shè)置等。 ? 1. 內(nèi)核參數(shù)調(diào)整:通過調(diào)整內(nèi)核參數(shù)來提高系統(tǒng)
    的頭像 發(fā)表于 06-29 09:45 ?1374次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>常見工具和堆棧解析

    鴻蒙開發(fā)實戰(zhàn):【性能調(diào)優(yōu)組件】

    性能調(diào)優(yōu)組件包含系統(tǒng)和應(yīng)用調(diào)優(yōu)框架,旨在為開發(fā)者提供一套性能
    的頭像 發(fā)表于 03-13 15:12 ?1063次閱讀
    鴻蒙開發(fā)實戰(zhàn):【<b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>組件】

    手把手教你如何調(diào)優(yōu)Linux網(wǎng)絡(luò)參數(shù)

    在高并發(fā)網(wǎng)絡(luò)服務(wù)場景中,Linux內(nèi)核的默認網(wǎng)絡(luò)參數(shù)往往無法滿足需求,導(dǎo)致性能瓶頸、連接超時甚至服務(wù)崩潰。本文基于真實案例分析,從參數(shù)解讀、問題診斷到優(yōu)化實踐,手把手教你如何
    的頭像 發(fā)表于 05-29 09:21 ?447次閱讀

    Linux系統(tǒng)性能調(diào)優(yōu)方案

    關(guān)鍵要點預(yù)覽:本文將深入解析Linux系統(tǒng)性能瓶頸的根本原因,提供可直接落地的調(diào)優(yōu)方案,讓你的系統(tǒng)性能
    的頭像 發(fā)表于 08-06 17:49 ?459次閱讀

    Linux內(nèi)核參數(shù)調(diào)優(yōu)方案

    在高并發(fā)微服務(wù)環(huán)境中,網(wǎng)絡(luò)性能往往成為K8s集群的瓶頸。本文將深入探討如何通過精細化的Linux內(nèi)核參數(shù)調(diào)優(yōu),讓你的K8s節(jié)點
    的頭像 發(fā)表于 08-06 17:50 ?558次閱讀

    Linux服務(wù)器性能調(diào)優(yōu)的核心技巧和實戰(zhàn)經(jīng)驗

    如果你正在為這些問題頭疼,那么這篇文章就是為你準備的!作為一名擁有10年經(jīng)驗的運維工程師,我將毫無保留地分享Linux服務(wù)器性能調(diào)優(yōu)的核心技巧和實戰(zhàn)經(jīng)驗。
    的頭像 發(fā)表于 08-27 14:36 ?514次閱讀