快速答案与 GCS 四大存储类别 (Storage Classes) 对比
对于出海网站、App 媒体资源托管与海量大模型数据集归档,选择正确的存储层级能在保障访问速度的同时将云端开销缩减到最低:
| 存储层级 (Class) | 访问频率与 SLA 可用性 | 存储单价 ($/GB/月) | 最低存储期限 | 典型适用架构场景 |
|---|---|---|---|---|
| ⚡ Standard (标准) | 每天高频读取,99.99% 可用性 | 约 $0.020 | 无限制 | 网站静态图片、JS/CSS 静态包、流媒体视频 |
| 📦 Nearline (近线) | 每月读取不到 1 次 | 约 $0.010 | 30 天 | 每日增量数据备份、月度财报附件 |
| 🧊 Coldline (冷线) | 每季度读取不到 1 次 | 约 $0.004 | 90 天 | 灾备容灾恢复副本、季度日志归档 |
| 🗄️ Archive (归档) | 每年读取不到 1 次 | 约 $0.0012 | 365 天 | 法律合规必须保留数年的历史死数据 |
步骤一:在 GCP 控制台创建高性能公开存储桶 (Bucket)
- 登录 Google Cloud Console,左侧菜单进入 “Cloud Storage” → “存储桶”(Buckets)。
- 点击 “创建”(Create):
- 名称: 全网唯一名称(例如
cdn-assets-myshop,若需绑定域名可直接命名为static.yourdomain.com); - 位置类型:
- Multi-region(多区域): 选择
us (美国多个区域)或asia (亚洲多个区域),跨国多数据中心高可用容灾;
- Multi-region(多区域): 选择
- 默认存储类别: 选择 “Standard (标准)”;
- 访问控制: 选择 “统一(Uniform - 推荐)”。
- 名称: 全网唯一名称(例如
- 点击“创建”。
步骤二:配置全网公开读权限 (Public Access)
为了让网站的所有访客能够正常加载存储桶里的图片:
- 进入刚创建的存储桶,切换到 “权限”(Permissions)标签页。
- 点击 “授予访问权限”(Grant access):
- 新的主账号(New principals): 输入
allUsers; - 分配角色(Role): 选择 Cloud Storage → Storage Object Viewer(存储对象查看者)。
- 新的主账号(New principals): 输入
- 点击“保存”,在弹出的风险提示中选择“设为公开”。
- 验证: 上传一张图片
logo.png,点击该文件即可获得公开访问直链:https://storage.googleapis.com/cdn-assets-myshop/logo.png。
步骤三:配置跨域资源共享 (CORS) 策略
如果前端网页通过 Ajax/Fetch 请求存储桶中的字体文件或 JSON 数据,必须放行 CORS:
- 在本地电脑创建一个名为
cors.json的文本文件:[ { "origin": ["https://yourdomain.com", "http://localhost:3000"], "method": ["GET", "HEAD", "OPTIONS"], "responseHeader": ["Content-Type", "Access-Control-Allow-Origin"], "maxAgeSeconds": 3600 } ] - 使用 GCP 官方命令行工具
gcloud(或 Cloud Shell)一键推送到存储桶:gcloud storage buckets update gs://cdn-assets-myshop --cors-file=cors.json - CORS 跨域配置秒级全网生效。
步骤四:挂载 Google Cloud CDN 开启 Anycast 全球边缘加速
- 在 GCP 菜单中进入 “网络服务” → “Cloud CDN”。
- 点击 “添加源”(Add origin)→ 选择 “外部应用程序负载平衡器”。
- 将后端存储桶绑定为您创建的 GCS Bucket。
- Anycast 边缘红利:
- Google Cloud CDN 会在遍布全球的 100+ 个 Anycast 边缘机房 自动缓存静态切片;
- 欧美或东南亚访客请求图片时,直接由当地离他最近的边缘服务器在 10ms 内 就近响应,源站带宽开销锐减 80% 以上。
常见错误与避坑指南
- 未配置生命周期规则导致存储费累加: 在存储桶“生命周期”规则中配置 “文件创建超过 180 天后自动从 Standard 降级为 Coldline”,可实现全自动成本优化。
- 免费层服务器搭建请参阅 GCP 永久免费 VPS 搭建实战。
常见问题解答 (FAQ)
Q1:GCS 存储桶支持绑定自定义个性化域名与免费 HTTPS 证书吗?
支持。通过 GCP 的全局负载均衡器(Global Load Balancer),可直接将 img.yourdomain.com 绑定到存储桶,Google 会免费自动签发并续期 Google Trust Services 的 SSL 证书。
Q2:使用 Python 或 Node.js 怎么把用户上传的图片直接传到 GCS?
在服务端使用官方 SDK 生成 预签名 URL(Signed URL),客户端拿到签名 URL 后可直接通过 HTTP PUT 直传到 GCS,完全不占用业务后端服务器的 CPU 与带宽。
Q3:为什么从国内访问 GCS 的 storage.googleapis.com 链接偶尔较慢?
因为 googleapis.com 节点在境外;出海业务面向全球海外用户体验极速,若面向国内用户建议在前面挂载 Cloudflare CDN 进行二次中继加速。