
Amazon Simple Storage Service
Amazon Simple Storage Service
Amazon S3 是 AWS 的对象存储服务,提供海量、高耐久的文件存储与访问,互联网应用的事实标准。
11 个 9 的耐久性,几乎不会丢数据
出网流量(egress)费用是常见隐性成本大头
在 AWS Console 或 CLI 创建 IAM 用户/角色,取 access_key 与 secret。绝大多数场景用 AWS SDK 自动签名(SigV4);很少需要手写 HTTP 请求。常用 SDK 调用:S3.putObject、getObject、createPresignedUrl。
可用率 · 30 天窗口
GitHub 活跃度
关于这个 API
Amazon S3 是 2006 年发布的对象存储服务,是 AWS 最古老也是最稳的服务之一。"对象存储"意味着数据按整文件单位存取,不像文件系统支持随机写——上传一个 100MB 视频就是一个 object,要更新就重新 upload 整个 object。这种设计让 S3 能轻松扩展到 EB 级。
核心概念是 bucket 与 object。bucket 是全局唯一命名的容器(在某个 region),object 是 bucket 里的文件,用 key 寻址(如 photos/2024/avatar.png)。S3 没有真正的"文件夹"——分隔符只是命名约定。pre-signed URL 是常用模式:让浏览器或客户端直接上传/下载,避免数据走你的服务器,省带宽且省成本。
费用结构容易被低估。存储本身按 GB·月计费,但请求次数(GET/PUT/LIST 每千次约几美分)和出网流量(egress 约 0.09 美元/GB)才是大头。配合 CloudFront 做缓存或开 S3 Intelligent-Tiering 自动迁移冷数据是常见优化。权限要小心:bucket policy、ACL、IAM 三层叠加,新建 bucket 默认 block all public access 是 2018 年后才加的保护,老 bucket 仍可能因配置错误暴露。
你可以做什么
- 1托管网站静态资源(HTML、JS、图片)
- 2存储用户上传文件(照片、视频、附件)
- 3存放数据湖原始数据供分析使用
- 4归档冷数据到 Glacier 长期保存
- 5作为 CDN 源站供 CloudFront 分发
优劣对比
优点
- 11 个 9 的耐久性,几乎不会丢数据
- 与 AWS 生态深度集成(Lambda、Athena、CloudFront)
- pre-signed URL 让客户端直传安全可控
- 存储类阶梯(Standard / IA / Glacier)让成本可优化
注意事项
- 出网流量(egress)费用是常见隐性成本大头
- eventual consistency 已改为 strong consistency,但旧文档可能误导
- bucket policy + ACL + IAM 三层权限模型易配错导致公开泄露
快速开始
在 AWS Console 或 CLI 创建 IAM 用户/角色,取 access_key 与 secret。绝大多数场景用 AWS SDK 自动签名(SigV4);很少需要手写 HTTP 请求。常用 SDK 调用:S3.putObject、getObject、createPresignedUrl。
常见问题
S3 的免费额度有多少?+
首 12 个月每月 5GB 标准存储 + 2 万 GET 请求 + 2000 PUT 请求免费。超出按用量计费。
上传的文件如何能被公网直接访问?+
需配合 bucket policy 或 object ACL 允许 public read,并关闭 block public access。生产建议用 CloudFront 而非直接公开 bucket。
强一致性和最终一致性?+
2020 年起所有操作都是 strong read-after-write consistency;老资料里说的 eventual consistency 已过时。
怎么省钱?+
设置生命周期策略把冷数据搬到 Standard-IA / Glacier;用 CloudFront 缓存减少出网;定期清理未完成 multipart upload。
技术细节
- 认证方式
- api_key
- 计费
- paid
- 协议
- REST
- SDK
- python, javascript, typescript, java, go, ruby, php, csharp
- 响应时间
- 42 ms
- 上次巡检
- 2026/6/26 06:22:16
接口端点
从 OpenAPI spec 自动解析。显示 12 / 93 个未弃用端点。
//{Bucket}/{Bucket}/{Bucket}/{Bucket}/{Bucket}/{Key}/{Bucket}/{Key}/{Bucket}/{Key}/{Bucket}/{Key}/{Bucket}/{Key}#acl/{Bucket}/{Key}#acl/{Bucket}/{Key}#attributes&x-amz-object-attributes另有 81 个端点未显示,详见 OpenAPI spec。
更多来自 Amazon Web Services 的 API
AWS IAM Access Analyzer API 分析 IAM 资源策略找潜在的过度授权或外部访问,主动识别安全风险。
Alexa for Business帮助企业在组织内使用Alexa设备和服务。
Amazon API Gateway帮助开发者构建安全且可扩展的移动和网页应用后端。
用于创建、管理和快速部署应用配置的服务。
Amazon AppFlow 提供云端数据流管理和集成服务。支持不同云服务间的数据传输和同步。
Amazon AppIntegrations 服务用于配置和重用与外部应用的连接。
Amazon AppStream 2.0 提供云端应用程序流式传输服务,支持远程访问和管理。
Amazon Athena 是一种交互式查询服务,允许使用标准 SQL 直接分析存储在 Amazon S3 中的数据。