最佳 Linux 网络调优技巧?

JB.*_*JB. 6 networking linux performance

我认为为 linux 网络调整提出一个核心问题是个好主意。我对以下调整选项特别感兴趣。

  1. 网络服务器
  2. 清漆/鱿鱼服务器
  3. 数据库服务器
  4. 文件服务器
  5. 应用服务器

Lap*_*006 5

在这一点上,通常不值得在内核中进行“调整”的开销。除非您有测试设备(或 A/B 选项的集群)和非常好的文档,否则仅凭系统管理员的开销是不值得的。

如今,Linux 内核具有良好的 TCP 自动调整功能,您可以做得更好,但是这些都不是默认设置,因为它们在 Internet 上被视为“贪婪”且不公平。

就我开始调优而言:

  1. 使用 ext3 或 xfs 挂载 noatime(暗示 nodiratime)
  2. 只运行需要的服务
  3. 对于像 squid 和 mysql 这样的服务,允许它们使用更多的 RAM

除了极少数例外,这三个会让你达到 90%。


pQd*_*pQd 3

网络堆栈调整我在路由器/防火墙上安装了连接到数百个用户的网络

net/ipv4/route/max_size=262144
net/ipv4/netfilter/ip_conntrack_tcp_timeout_established=18000
net/ipv4/neigh/default/gc_thresh1=1024
net/ipv4/neigh/default/gc_thresh2=2048
net/ipv4/neigh/default/gc_thresh3=4096
net/netfilter/nf_conntrack_max=128000
net/netfilter/nf_conntrack_expect_max=4096
Run Code Online (Sandbox Code Playgroud)

[多年来主要是根据一些令人不快的崩溃进行了经验调整]

对于 file/sql/poroxy 服务器,您明确希望使用noatime、nodiratime和 reiserfs - notail ]挂载带有数据/线轴的分区,以避免每次访问文件进行读取时产生额外的磁盘垃圾。

并且您确实想要[也许您还不知道;-] 收集统计数据 - 例如使用munin - 进行一些容量规划,看看您的调整是否确实减少了系统负载。