五、对象存储OSS:15%
是阿里云对外提供的海量,安全,低成本,高可靠的云存储服务。用户可以通过调用API,在任何应用、任何时间、任何地点上传和下载数据,也可以通过用户Web控制台对数据进行简单的管理。OSS适合存放任意文件类型(网页文件—可以直接构建静态网站,图片,视频,音频,文本文件等),适合各种网站、开发企业及开发者使用。提供多种鉴权和授权机制及白名单、防盗链(设置referer,限定某几个网站可以访问)、主子账号功能; 提供图片处理、音视频转码、内
容加速分发(CDN)、鉴黄服务(阿里绿网)、归档服务等多种数据增值服务; 不限文件数目和大小(CopyOjbect-1G, PutOjbect-5G,),无限的存储空间根据实际存储量无限扩展,解决传统硬件存储扩容问题.
1、 典型使用场景
图片和音视频等应用的海量存储;
网页或者应用的静态和动态资源分离(图片,音视频快速加载);
云端数据处理(图片处理、媒体转码)
跨域访问:跨域资源共享(Cross-Origin Resource Sharing),简称CORS,在OSS控制台配置CORS规则可实现跨域访问
服务器端加密编码
静态网站托管(Hosting Websites):用户可以通过OSS 控制台将自己的存储空间配置成静态网站托管模式,但是必须指定索引页面,其中错误页面是可选配置;
图片服务:图片水印,管道(提供多种处理方式),图片样式(保存常用处理方式)
网站动静分离CDN加速OSS配置:适用于静态文件访问量大,服务器负载高,I/O问题导致用户访问卡顿,静态文件用户访问量大,且分布在各地;这个时候OSS作为海量文件存储源,OSS作为CDN的源站,通过CDN加速分发,用户通过CDN节点就近获得文件。(可以达到—考题:存储费用最低,OSS的存储费用仅为ECS磁盘费用的50%;流量费用低,相比直接通过OSS访问,除极少额外增加的回源流量外,主要流量使用CDN流量,单价最低只需0.26GB,远远低于OSS直接访问的外网流量单价)
2、 核心概念
存储空间(Bucket):名称全局唯一,没有目录概念
对象/文件(Object):元信息(Object Meta),用户数据
(Data)和文件名(Key)组成,同名文件上传直接覆盖。
Endpoint(访问域名):分内网和外网
读写权限(ACL):public-read-write(任何人(包括匿名访问)都可以对该存储空间中的文件进行读写操作);public-read(公共读,私有写);private(只有授权用户可以对该存储空间内的文件进行读写操作)
3、 图片服务(只处理来自于OSS的图片)
单个 Object(即每张图片)允许的最大大小是20MB。
Channel:是 IMG上的命名空间,与Bucket同名;
Style:提供用户将图片的处理操作和参数保存成一个别名,即样式。一系列操作,利用样式功能后,只需要用一个很短的URL就能实现相同的效果,作用范围只在一个Channel下;
处理字符串:包含转换参数、转换格式
分隔符:处理分隔符(@);样式分隔符(@!);管道分隔符(|)
例子:
http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg@100w_100h.jpg
以图片访问的URL为例子
image-demo:用户的频道的名字,即Channel
img-cn-hangzhou.aliyuncs.com:图片杭州地区访问域名,即Endpoint
example.jpg:待处理的图片的原图名字,即Object
@:处理分隔符,用于区分Object跟处理字符串
100w_100h.jpg:处理字符串
100w_100h:将原图进行处理的参数,即转换参数
.jpg:将原图根据参数处理后的保持的格式,即转换格式
图片URL构成规则:图片服务都是使用标准的HTTP的GET请求来访问的,所有的处理参数也是编码在URL中的。
http://bucket.endpoint/object@100w_100h_90Q.jpg 三级域名访问图片
http://userdomain/object@100w_100h_90Q.jpg 自定义域名
http://userdomain/object@!style 样式访问