ALICloud OSS(对象存储)
对象存储(Object Storage Service,简称 OSS)
是阿里云提供的海量、安全、低成本、高可靠的云存储服务。它具有与平台无关的 RESTful API接口,能够提供99.999999999%的服务持久性。您可以在任何应用、任何 时间、任何地点存储和访问任意类型的数据。 OSS非常适合用来存储大量不同大小、格式的非结构化数据,比如视频、图像、日志、 文本文件等。单个数据的大小从1字节到48.8T,可以存储的文件个数无限,从而给互联 网应用提供海量的存储能力。
数据存储到阿里云OSS以后,您可以选择:
标准类型(Standard):作为移动应用、大 型网站、图片分享或热点音视频的主要存储方式;
低频访问类型(Infrequent Access):存 储较少访问但需要实施响应的数据; 归档类型(Archive):作为不经常访问数 据的备份和归档。
OSS实例-基本概念
1、Object
-用户的每个文件都是一个Object -文件大小限制
Put Object方式最大不能超过5GB,通过SDK或API使用Multipart Upload的分片上传方式Object大小不能超过48.8T -Object包含key、data和meta data
2、Bucket
-每个Object必须都包含在Bucket中
-Bucket名在整个OSS中具有全局唯一性,且不能修改
-一个用户最多可创建30个Bucket
-Bucket 的容量无上限,且OSS的读写效率不会因为单个目录下存在大量文件而受到影响。 -一个应用可以对应一个或多个Bucket
3、Service
-提供给用户的虚拟存储空间,用户可以在这个存储空间中拥有一个或者多个Bucket
4、Region
-Region 表示 OSS 的数据中心所在的地域,物理位置
-一般来说,距离用户更近的 Region 访问速度更快。
-Region是在创建 Bucket 的时候指定的,一旦指定之后就不允许更改,该 Bucket 下所有的 Object 都存储在对应的数据 中心,目前不支持 Object 级别的 Region 设置。
5、Endpoint
-Endpoint 表示 OSS 对外服务的访问域名。
-OSS 以 HTTP RESTful API 的形式对外提供服务,当访问不同的 Region 的时候,需要不同的域名。通过内网和外网访问 同一个 Region 所需要的 Endpoint 也是不同的。(例如杭州 Region 的外网 Endpoint 是 oss-cn- hangzhou.aliyuncs.com,内网 Endpoint 是 oss-cn-hangzhou-internal.aliyuncs.com。)
6、AccessKey
-AccessKey,简称 AK,指的是访问身份验证中用到的 AccessKeyId 和AccessKeySecret。
-OSS 通过使用 AccessKeyId 和 AccessKeySecret 对称加密的方法来验证某个请求的发送者身份。AccessKeyId 用于标识 用户,AccessKeySecret 是用户用于加密签名字符串和 OSS 用来验证签名字符串的密钥。
OSS 具备的其他各项优势
方便、快捷的使用方式
提供标准的RESTful API 接口、丰富的SDK 包、客户端工具、控制台。您可以像使用文件一样方便地上传、下载、检索、管理用于 Web 网站或者移动应用的海量数据。
不限文件数量和大小。您可以根据所需存储量无限扩展存储空间,解决了传统硬件存储扩容问题。
支持流式写入和读出。特别适合视频等大文件的边写边读业务场景。
支持数据生命周期管理。您可以自定义将到期数据批量删除或者转入到低成本de归档服务。
强大、灵活的安全机制
灵活的鉴权,授权机制。提供 STS 和 URL 鉴权和授权机制,以及白名单、防盗链、主子账号功能。
提供用户级别资源隔离机制和多集群同步机制(可选)。
丰富、强大的增值服务
图片处理:支持 jpg、png、bmp、gif、webp、tiff 等多种图片格式的转换, 以及缩略图、剪裁、水印、缩放等多种操作。
音视频转码:提供高质量、高速并行的音视频转码能力,让您的音视频文件 轻松应对各种终端设备。
内容加速分发:OSS 作为源站,搭配 CDN 迕行加速分发,具有稳定、无回源带宽限制、性价比高、一键配置的特点。
使用场景
1、 图片和音视频等应用的海量存储
OSS 可用于图片、音视频、日志等海量文件的存储。各种终端设备、Web 网站 程序、移动应用可以直接向 OSS 写入或读取数据。
OSS 支持流式写入和文件写 入两种方式,如下图所示:
2、网页或者移动应用的静态和动态资源分离
利用 BGP 带宽,OSS 可以实现超低延时的数据直接下载。也可以配合阿里云 CDN 加速服务,为图片、音视频、移动应用的更新分发提供最佳体验
3、云端数据处理
上传文件到OSS后,可以配合媒体转码服务(MTS)和图片处理服务(IMG)进行云端的数据处理
OSS计费方式
计量项 |
计费项 |
计费方式 |
存储量 |
存储费用 |
– 按量付费 |
流量 |
流量费用 |
– 按量付费 |
请求次数 |
请求费用 |
按量付费 |
数据处理 |
数据处理费用 |
按量付费 |
流量的计量项 |
适用的存储类型 |
计量方式 |
计费方式 |
外网流出流量 |
所有 |
通过互联网从 OSS 下载数据到本地端所 产生的流量 |
– 按量付费: 每小时累计外网流出流量(GB) * 每 GB 单价 |
内网流出流量 |
所有 |
通过阿里云内网从 OSS 下载数据到 ECS 服务器所产生的流量 |
免费 |
外网流入流量 |
所有 |
通过互联网从本地端上传数据到 OSS 所 产生的流量 |
免费 |
内网流入流量 |
所有 |
通过阿里云内网从 ECS 服务器上传数据 到 OSS 所产生的流量 |
免费 |
CDN 回源流出流 量 |
所有 |
通过 CDN 服务层下载 OSS 的数据所产 生的回源流量 |
– 按量付费:每小时累计 CDN 回源流出 流量(GB) * 每 GB 单价 |
跨区域复制流量 |
所有 |
使用跨区域复制功能将源 Bucket 的数 据同步复制到目标 Bucket 时所产生的 流出流量 |
仅支持按量付费: 每小时累计跨区域复制流量(GB) * 每 GB 单价 |
OSS权限管理
OSS提供ACL(Access Control List)权限控制方法,OSS ACL提供Bucket级别的权限访问控制,
Bucket目前有三种访问 权限:public-read-write,public-read和private。
中文名称 |
权限对访问者的限制 |
公共读写 |
– 任何人(包括匿名访问)都可以对该 Bucket中的Object进行读/写/删除操作。 – 所有这些操作产生的费用由该Bucket的 Owner承担,请慎用该权限。 |
公共读,私有写 |
– 只有该Bucket的Owner或者授权对象可 以对存放在其中的Object进行写/删除操 作。 |
私有读写 |
– 只有该Bucket的Owner或者授权对象可 以对存放在其中的Object进行读/写/删除 操作。 |
OSS-Bucket静态托管
OSS支持静态网站托管。用户可以通过OSS 控制台将自己的存储空间配置成静态网站托管模式。配置生效后,假如这个
Bucket在杭州,那么这个静态网站的访问域名为:
http://<Bucket>.oss-cn-hangzhou.aliyuncs.com
静态页面支持(Index Document Support)
静态页是指当用户直接访问静态网站根域名时, OSS返回的默认静态页(相当于网站的 index.html)。如果您为一个Bucket配置了静态网 站托管模式,就必须指定一个静态页。
错误页面支持(Error Document Support)
错误页面是指在用户访问该静态网站时,如果遇到HTTP 4XX错误时(最典型的是404 “NOT FOUND”错误),OSS返回给用户的错误页面。 通过指定错误页面,您可以为您的用户提供恰当的 出错提示。
OSS-Bucket防盗链
OSS是按使用收费的服务,为了防止您在OSS上的数据被其他人盗链,OSS支持基于HTTP header中表头字段referer的防盗 链方法。您可以通过OSS管理控制台或者API的方式对一个Bucket设置referer字段的白名单和是否允许referer字段为空的请 求访问。例如,对于一个名为oss-example的Bucket,设置其referer白名单为http://www.aliyun.com/。则所有referer为 http://www.aliyun.com/的请求才能访问oss-example这个Bucket中的Object。
- 用户只有通过URL签名或者匿名访 问Object时,才会做防盗链验证。
- 一个Bucket可以支持多个referer 参数。
- 白名单不为空,且设置了不允许 referer字段为空的规则,则只有 referer属于白名单的请求被允许, 其他请求(包括referer为空的请 求)会被拒绝。
OSS-Bucket日志管理
OSS提供自动保存访问日志记录功能。Bucket的 拥有者可以通过OSS控制台为其所拥有的Bucket 开启访问日志记录功能。当一个Bucket(源 Bucket,Source Bucket)开启访问日志记录功 能后,OSS自动将访问这个Bucket的请求日志, 以小时为单位,按照固定的命名规则,生成一个 Object写入用户指定的Bucket(目标Bucket, Target Bucket)。
OSS-Bucket跨域访问
跨域访问,或者说JavaScript的跨域访问问题,是浏览器出于安 全考虑而设置的一个限制,即同源策略。当来自于A网站的页面 中的JavaScript代码希望访问B网站的时候,浏览器会拒绝该访 问,因为A、B两个网站是属于不同的域。
在实际应用中,经常会有跨域访问的需求,比如用户的网站 www.a.com,后端使用了OSS。在网页中提供了使用 JavaScript实现的上传功能,但是在该页面中,只能向 www.a.com发送请求,向其他网站发送的请求都会被浏览器拒 绝。这样就导致用户上传的数据必须从www.a.com中转。如果 设置了跨域访问的话,用户就可以直接上传到OSS而无需从 www.a.com中转
OSS-Bucket生命周期
OSS 提供 Object(文件)生命周期管理来为您管理 Object。您可以为某个Bucket定义生命周期配置, 来为该Bucket的Object定义各种规则。目前,您可 以通过规则来删除相匹配的Object。每条规则都由 如下几个部分组成:
- Object名称前缀 只有匹配该前缀的Object才适用这个规则。
- 操作 您希望对匹配的Object所执行的操作。
- 日期或天数 您期望在特定日期或者在Object最后修改时间后
多少天执行指定的操作。 只要Object名称前缀和一条规则的前缀匹配,那么 该规则就适用于它。
OSS-Bucket跨区域复制
跨区域复制(Bucket Cross-Region Replication) 是跨不同OSS数据中心的Bucket自动、异步复制 Object,它会将对源Bucket中的对象的改动(新 建、覆盖、删除等)同步到目标Bucket。该功能能 够很好的提供Bucket跨区域容灾或满足用户数据复 制的需求。目标Bucket中的对象是源Bucket中对象 的精确副本,它们具有相同的对象名、元数据以及 内容(例如创建时间、拥有者、用户定义的元数 据、Object ACL、对象内容等)。
OSS-Bucket镜像回源
通过规则的方式,对每条到OSS的Get请求的url进行 匹配,然后按照特定的方式进行回源。规则最多配 置5条,顺序匹配,直到匹配到有效规则。回源类型 分为镜像方式和重定向的方式。 如果配置了镜像回写,则当Get一个不存在的文件 时,会向源地址请求这个文件,返回给用户,并同 时写入到OSS。 镜像回写主要用于无缝迁移数据到OSS,即服务已 经在自己建立的源站或者在其他云产品上运行,需 要迁移到OSS上,但是又不能停止服务,此时可利 用镜像回写功能实现
OSS-图片服务
阿里云OSS图片处理服务(Image Processing,简称 IMG) ,是阿里云OSS对外提供的海量、安全、低成本、高可靠的 图片处理服务。您可以将原始图片上传保存在OSS上,通过简单的 RESTful 接口,在任何时间、任何地点、任何互联网 设备上对图片进行处理。图片处理服务提供图片处理接口,图片上传请使用OSS上传接口。基于IMG,您可以搭建出跟图 片相关的服务。
图片处理提供以下功能:
- 获取图片信息
- 图片格式转换
- 图片缩放、裁剪、旋转
- 图片添加图片、文字、图文混合水印
- 自定义图片处理样式
- 通过管道顺序调用多种图片处理功能
OSS-图片服务访问规则
图片服务都是使用标准的HTTP的GET请求来访问的,所有的处理参数也在URL的QueryString中。
通过URL的形式
通过三级域名访问: http://bucket.<endpoint>/object?x-oss-process=image/action,parame_value
- Bucket:用户的IMG频道。
- endpoint:用户的Bucket所在数据中心的访问域名。
- Object:在IMG中,用户操作图片的基本数据单元是Object。即OSS对应的Object,单个Object(即每张图片)允许
的最大大小是20MB。
- action:用户对图片做的操作。
- parame:用户对图片做的操作所对应的参数。
多个action之间组合形式
多个action之间效果顺序执行,例如:image/resize,w_200/rotate,90表示图片先进行宽为200的缩放,再进行90度的旋
转。
通过样式来请求缩略图 [自定义Style(样式)或Channel (频道)]
使用SDK方式
注:图片服务处理后的图片并不会自动保存在OSS中。
2个评论
-一个用户最多可创建30个Bucket
这个根据最新文档,是100个
很强