搬瓦工VPS本身的线路质量已经不错(尤其是CN2 GIA线路),但通过合理的系统和网络优化,可以进一步提升访问速度和传输效率。本文汇总所有实用的速度优化方法。
| 优化方向 | 方法 | 效果 | 难度 |
|---|---|---|---|
| TCP加速 | 开启BBR | 显著提升传输速度 | 简单 |
| 内核调优 | sysctl参数优化 | 提升并发和吞吐量 | 中等 |
| DNS优化 | 使用快速DNS | 加快域名解析 | 简单 |
| CDN加速 | Cloudflare等 | 静态资源加速、缓解源站压力 | 简单 |
| Web服务优化 | Nginx/缓存调优 | 减少响应时间 | 中等 |
| 机房选择 | 选CN2 GIA线路 | 根本性提升线路质量 | 简单 |
BBR(Bottleneck Bandwidth and RTT)是Google开发的TCP拥塞控制算法,可以显著提升网络传输速度,尤其在高延迟的跨国链路上效果明显。
Ubuntu 22.04 / Debian 12 开启方法(内核自带BBR):
# 开启BBR
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
# 验证
sysctl net.ipv4.tcp_congestion_control
# 输出: net.ipv4.tcp_congestion_control = bbr
lsmod | grep bbr
# 应看到 tcp_bbr 模块
CentOS 7 / 旧内核开启方法:
# 需要先升级内核到4.9+
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-ml -y
# 设置默认启动新内核
grub2-set-default 0
reboot
# 重启后开启BBR
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
通过调整sysctl参数优化TCP性能:
# 编辑 /etc/sysctl.conf,添加以下内容
cat >> /etc/sysctl.conf << 'EOF'
# TCP缓冲区优化
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
# 连接队列优化
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535
net.ipv4.tcp_max_syn_backlog = 65535
# TCP连接优化
net.ipv4.tcp_fin_timeout = 15
net.ipv4.tcp_keepalive_time = 300
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_keepalive_intvl = 15
net.ipv4.tcp_max_tw_buckets = 65535
net.ipv4.tcp_tw_reuse = 1
# 快速回收和开启SYN Cookie
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_fastopen = 3
# 文件描述符限制
fs.file-max = 1000000
EOF
# 应用配置
sysctl -p
VPS上的DNS解析速度会影响访问外部资源的速度:
# 使用Cloudflare和Google的DNS
cat > /etc/resolv.conf << 'EOF'
nameserver 1.1.1.1
nameserver 8.8.8.8
nameserver 1.0.0.1
EOF
# 防止文件被覆盖
chattr +i /etc/resolv.conf
对于网站用户端DNS优化:
CDN(Content Delivery Network)可以缓存静态资源到全球节点,大幅提升访问速度:
Cloudflare配置要点:
Nginx配置优化可以减少服务器响应时间:
# /etc/nginx/nginx.conf 关键配置
worker_processes auto;
worker_rlimit_nofile 65535;
events {
worker_connections 65535;
multi_accept on;
use epoll;
}
http {
# 开启Gzip压缩
gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_types text/plain text/css application/json application/javascript
text/xml application/xml application/xml+rss text/javascript;
# 开启文件缓存
open_file_cache max=10000 inactive=30s;
open_file_cache_valid 60s;
open_file_cache_min_uses 2;
# 开启sendfile
sendfile on;
tcp_nopush on;
tcp_nodelay on;
# 客户端缓存
location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff2)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}
}
线路选择是速度优化的根本。搬瓦工机房推荐:
机房详细评测请参考:电信推荐机房、联通推荐机房、移动推荐机房。
优化后使用以下工具验证效果:
apt install speedtest-cli -y
speedtest-cli
Tip: 更多教程请查看新手教程,全部方案请查看搬瓦工方案汇总。