# 对象存储
对象存储服务,简称 OSS,是一种面向海量数据规模的分布式存储服务,具有稳定、可靠、安全、低成本的特点,能够提供十一个九的数据可靠性。OSS提供与平台无关的 RESTful API 接口,您可以在互联网任何位置存储和访问。OSS的容量和处理能力弹性扩展,并提供多种存储类型供您选择,全面优化存储成本。简单理解就是存储图片、音频、视频等非结构化数据的数据池。
在这里我选择了七牛云对象存储,大家在可能在疑惑为什么,或者它的优点是什么? 免费算是优点吗?使用七牛云的免费存储空间足够我们的练习使用了。
# 优点
# 成本低,资源弹性伸缩,按需付费
现在阿里云对象存储(简称 OSS)40G 容量一年的价格大概是 9 块钱。七牛云对象存储(简称 cos)更是有免费的 10G 容量。已经可以满足大部分个人站点的使用需求。不像服务器的流量是固定的,包含在服务器的费用里面了。无论你用或不用,都是这么多。对象存储可以是根据你的实际使用量进行计费。
# 大幅提升网页性能
一般情况下,我们都是建议使用主机服务器和对象存储分工合作的方式来存储网站数据。主机服务器主要负责存储网站的动态数据,对象存储则用来存储网站的静态文件。从而实现网站的动静分离,当用户访问一个网站时,分别从主机服务器和对象存储的服务器同步读取数据,可以大幅的提升网页性能。
# 管理方便
那个服务商都有单独的管理控制台。你不必打开网站,就可以像使用百度云盘一样使用对象存储来管理你的网站文件,除了上传、下载、预览等常用功能,还可以直接在对象存储上进行图片处理/媒体转码/数据分析等。
# 新建存储空间
注册七牛云账号 > 管理控制台 > 对象存储 > 新建储存空间

拿到 AccessKey 和 SecretKey

# 安装插件
七牛云官方提供并一直在维护的 SDK ,这个 SDK 以方便快捷的方式将数据安全的存储到七牛云上,无论是网站、云端还是终端等应用都可以让用户高速上传和下载。七牛云存储 Node.js SDK 使用指南
$ npm install qiniu --save
# 配置参数
https://github.com/push-over/egg-example/blob/70dc0ac730/config/config.default.ts
接下来将这些参数放到配置文件中:
config.qiniu = {
AccessKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
SecretKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
Bucket: 'xxxxxxx', // 存储空间的名字
Domain: 'xxxxxxx', // 融合 CDN 测试域名
};
# 保存图片
由于这个项目是一个
