OSS资源存储
一、OSS对象存储服务
1.概念
OSS为英文Object Storage Service缩写,表示为对象存储服务,对象是我们存储的文件元素,存储服务包含存储功能以及存储涉及的一系列安全措施。
2.存储方式
Oss存储并不是普通计算机存储方式,有文件目录管理方式,如果没有进行分目录管理是否意味着我们不能将资源分文别类的存放在服务器中,故此阿里对此存储方式提出桶的概念,英文名为bucket,一个"桶"就是一个存储空间,类似于一个文件夹,但这里没有文件夹的概念,我们通过不同的“桶”的空间实现资源的分类别。
因为没有层级的关系,每个“桶”(bucket 全文称为桶)之间是互相平行的,同之间的资源也是互相平行的,平行的概念就是没有层级,不存在一个桶中还有一个桶,一个桶中资源包含资源,举个例子就相当于一个文件夹中被你放了图片JPG,JPEG,PNG,MP4等等资源,他们是属性同行的关系。
为了更好的实现管理,设计者需要建立在“桶”上的层级管理,毕竟我们需要在一个桶的粒度上实现资源的层级分类,我们采用了object对象的键值对方式,我们有三个文件a.jpg b.png c.mp3 为了实现它的分类层级管理 我们在他存储的命名上做了手脚
{
"big\images":"a.jpg",
"big\images":"b.png",
"video\loog":"c.mp3"
}
这样我们可以表示 假使有一个文件夹big,big文件夹下面有一个images文件夹 在这个文件夹下面存储了a.jpg和b.png,这样的话我们在一个“桶”中存放同级的文件,但是我们可以通过自定义的对象格式key:value 通过的key的名称,搜索到这个key对象的value下的资源,也就相当于文件夹的层级分类管理,这是一个巧妙的地方,或许对象存储这个对象并不是指存储的资源,而是指该存储方式的特性 对象的key。
3.存储安全
我们定义了不同的桶,接下来我们可以为不同的人桶上不同的锁,我们可以根据IP地址限制访问等等一系列的措施。
还需要相关的秘钥授权等
4.访问
阿里采用的是分布式部署,在各个地方都有相关的服务器,有着不同的OSS服务,不同区域的访问有着不同端口,英文为endpoint,格式为oss-cn-beijing.aliyuncs.com 这个表示当前部署服务器的节点,我们如果访问需要完成的域名,需要使用桶的名称拼接节点名称共同昂文 如我这里同名称叫做zino-dev 节点为oss-cn-beijing.aliyuncs.com访问路径为zino-dev.oss-cn-beijing.aliyuncs.com
我们还需要拼接完成的访问路径,就是上述对象定义的key的值 zino-dev.oss-cn-beijing.aliyuncs.com+''key
假如为zino-dev.oss-cn-beijing.aliyuncs.com\big\images

浙公网安备 33010602011771号