引言
“服务器不贵,带宽太贵了。“这句话几乎是每个自托管玩家的心声。
许多人在选 VPS 时只关注 CPU 和内存的价格,却忽略了带宽成本——这往往是云账单中最容易被忽视的"隐形杀手”。一台 $5/月的 VPS,如果流量超了,月底账单可能轻松飙到 $50+。
本文将系统性地拆解云带宽的收费逻辑,并分享7个经过实战验证的省钱技巧,帮你省下至少80%的数据传输费用。
一、云带宽为什么这么贵?
1.1 带宽的"三重收费”
与传统物理服务器不同,云厂商对带宽的收费通常分三部分:
| 收费项目 | 典型价格 | 说明 |
|---|---|---|
| 出站流量(Egress) | $0.05~$0.23/GB | 从服务器流出到互联网的数据 |
| 入站流量(Ingress) | 通常免费 | 从互联网流入服务器的数据 |
| 固定带宽费 | $3~$200/月 | 按带宽上限计费 |
核心问题:出站流量(Egress)是成本大头。如果您的应用提供大量图片、视频或 API 数据,出站流量会急剧上升。
1.2 各大厂商出站流量价格对比
| 云厂商 | 出站流量价格($/GB) | 免费额度/月 |
|---|---|---|
| AWS(前100GB) | $0.09 | 100GB(首年) |
| AWS(100GB-1TB) | $0.085 | — |
| Azure | $0.087 | 15GB 免费 |
| 谷歌云 | $0.085~$0.12 | 100GB/月(f1-micro) |
| 阿里云(国内) | ¥0.80/GB | 无 |
| 腾讯云(国内) | ¥0.80/GB | 无 |
| DigitalOcean | $0.01/GB(超出后) | 1TB~5TB(含在套餐内) |
| Vultr | $0.01/GB(超出后) | 1TB~4TB(含在套餐内) |
| Hetzner | €0.007/GB | 10TB~20TB(含在套餐内) |
💡 关键发现:Hetzner 的超出流量仅 €0.007/GB,是 AWS 的 1/12!这也是为什么海外自托管社区强烈推荐 Hetzner 的原因之一。
二、7个带宽省钱实战技巧
技巧1:使用 CDN 缓存静态内容(省钱效果:★★★★★)
CDN(内容分发网络)是最有效的带宽省钱工具。原理很简单:边缘节点缓存静态资源后,用户请求直接从边缘返回,不再回源站消耗出站流量。
推荐方案:Cloudflare 免费计划
- 完全免费,全球 330+ 节点
- 自动缓存 CSS、JS、图片、字体
- 开启后源站出站流量减少 60%~90%
配置方法(Nginx + Cloudflare):
# 在 Nginx 中设置缓存控制头
location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff2)$ {
expires 365d;
add_header Cache-Control "public, immutable";
add_header CDN-Cache-Status $upstream_cache_status;
}
然后在 Cloudflare Dashboard 中启用 “Caching → Cache Level: Standard” 即可。
技巧2:选择带宽友好的云厂商(省钱效果:★★★★)
同样是 10TB 出站流量,不同厂商的成本天差地别:
# AWS: 100GB $0.09 + 900GB × $0.085 = $85.65
# Hetzner: 10TB 内免费,超出后 €0.007/GB
# DigitalOcean: 大多套餐含 2-4TB 流量
推荐优先级:
- Hetzner — 10TB 免费流量,超额仅 €0.007/GB
- DigitalOcean $12/月以上方案 — 含 2-4TB 流量
- BuyVM — €0.005/GB 超额流量,卢森堡节点速度快
技巧3:对象存储全部搬上 Cloudflare R2(省钱效果:★★★☆)
Cloudflare R2 的杀手锏是零出站流量费(Zero Egress Fees):
| 特性 | AWS S3 | Cloudflare R2 |
|---|---|---|
| 存储(1TB) | $23/月 | $15/月 |
| 出站流量(1TB) | $90 | $0 |
| A 类操作(10万次) | $0.05 | $0.45 |
| B 类操作(100万次) | $0.004 | $0.0036 |
# 使用 rclone 将 S3 数据迁移到 R2
rclone copy s3:my-bucket r2:my-bucket \
--progress \
--multi-thread-streams 8
技巧4:开启 Gzip/Brotli 压缩(省钱效果:★★★)
压缩可以减少 70% 的传输数据量。几乎所有 Web 服务器都支持:
# Nginx Brotli 压缩配置
brotli on;
brotli_comp_level 6;
brotli_types text/plain text/css application/json application/javascript \
application/xml application/xml+rss text/javascript image/svg+xml;
# gzip 作为 fallback
gzip on;
gzip_comp_level 5;
gzip_types text/plain text/css application/json application/javascript;
技巧5:图片自动压缩 + WebP/AVIF 格式转换(省钱效果:★★★★)
图片通常是带宽消耗的第一名。使用图片压缩工具能显著减少传输量:
# 安装 sharp 或 imagemin 批量处理现有图片
npm install -g sharp-cli
# 批量转换 PNG 为 WebP(体积减少 60%+)
sharp -i ./images/*.png -o ./webp/ --format webp --quality 80
或者使用 Nginx 的 ngx_http_image_filter_module 动态缩放:
location /images/ {
image_filter resize 800 600;
image_filter_jpeg_quality 80;
}
技巧6:使用反向代理共享带宽池(省钱效果:★★★☆)
如果您有多个服务部署在同一台 VPS 上,使用反向代理统一入口,可以减少 TLS 握手和重复的连接开销:
# Docker Compose 示例:使用 Nginx Proxy Manager
version: '3'
services:
nginx:
image: jc21/nginx-proxy-manager:latest
ports:
- "80:80"
- "443:443"
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
通过统一的反向代理,您还可以方便地在全局配置 CDN 和缓存规则。
技巧7:架构迁移——把数据库放到与 App 同一区域(省钱效果:★★☆)
跨区域流量收费很高。确保您的数据库和应用程序在同一个数据中心:
# 错误做法:DB 和 App 跨区域
# App: 新加坡 | DB: 美西 → 跨区域流量费
# 正确做法:同区域部署
# App: 新加坡 | DB: 新加坡 → 内网通信免费
AWS 跨区域数据传输费高达 $0.02~$0.09/GB,而同区域 AZ 间通信仅 $0.01/GB。
三、实际省钱案例
案例:一个日活 5000 的图片分享站
优化前(仅使用 AWS EC2):
| 项目 | 费用 |
|---|---|
| EC2 (t3.medium) | $30.14/月 |
| 出站流量(1.5TB) | $135/月 |
| S3 存储(500GB) | $12.50/月 |
| S3 出站流量 | $45/月 |
| 总计 | $222.64/月 |
优化后(Hetzner + CDN + R2 + 图片压缩):
| 项目 | 费用 |
|---|---|
| Hetzner CX42 (4核/8GB) | €8.85/月 |
| Cloudflare CDN(免费) | $0/月 |
| 出站流量(经CDN后仅200GB) | €1.40/月 |
| R2 存储(500GB) | $7.50/月 |
| R2 出站流量 | $0/月 |
| 总计 | ~$18/月 |
节省比例:92%!
四、总结与行动清单
| 优先级 | 行动 | 预计节省 |
|---|---|---|
| 🔴 高 | 启用 CDN(Cloudflare 免费计划) | 60%~90% |
| 🔴 高 | 图片压缩 + WebP 转换 | 40%~70% |
| 🟡 中 | 迁移到 Hetzner / BuyVM | 50%~80% |
| 🟡 中 | 将对象存储迁移到 R2 | 50%~100% |
| 🟢 低 | 启用 Brotli/Gzip 压缩 | 20%~40% |
| 🟢 低 | 同区域部署减少跨区流量 | 30%~50% |
记住一个原则:数据出站前,先用 CDN 挡一道;数据落地前,先压缩再传输。
如果您还没有尝试 Cloudflare 免费 CDN 或 R2,今天就是最佳时机——前者免费省钱,后者能帮你省下所有的出站流量费。
下期预告:我们将对比各大云厂商的预留实例和 Spot 实例,教你如何再省 60%~80% 的计算费用。