请教一个关于OSS存储图片的问题?

请教大家一个关于oss的问题,比如图片上传这种静态资源,我们一般都是放在oss或者本地,放在本地的好处是省钱,操作方便,但是缺点就是访问太慢,如果首屏十几个大图片要加载,对于一个1~2M带宽的服务器来说,那真是慢到家了。

改进的方法一般都是采用OSS来管理图片,但是OSS收费,虽然有免费额度,我之前咨询过阿里云OSS和七牛云OSS,两者每月都有免费的流量额度,但是七牛云貌似要比阿里云送的要多些。

我的疑问是:
1、OSS上的图片流量是怎么计费的,上行(上传)不收费,下行(下载/访问)收费?
2、如果一个图片大小1M,我访问一次就需要消费掉1M大小额度的流量么?
3、如果访问同一个资源N次,那么消费的流量 是乘倍的增加的么?
4、假如访问同一个资源N次,所消耗的流量是N倍的话,那别人拿到OSS的访问路径岂不是能给你刷死?怎么解?
5、OSS的开通方式是什么样的呢?比如说1、 我只想开通100G/月这样的流量套餐,一个月花费个30块钱,要是用不完转到下月,用完那OSS就给我停了,下月继续用,就像手机卡流量一样。2、我开通了OSS这个功能之后,流量我就管不住了。别人一晚上刷我100G 我也是没办法。
6、还是接上条说,OSS后台可以设置流量阈值么?比如每天要是超过多少M就禁用这种?可以手动增加IP黑名单么?可以智能增加IP黑名单么(比如同一个IP连续几百次调用肯定有问题啊,这种连想都不用想肯定要拉黑的)?
7、你们上传图片都是原图还是压缩(尽可能保证原画质)之后的呢?
8、现在七牛云和阿里云对于用户的免费额度是多少呢?
9、你们的项目(公司或者自己的)对于这种静态资源图片都是怎么处理的呢?

可能有的同学会说可以给资源加上一个过期时间,我感觉是不可取的,因为一般情况下数据库都是保存的可访问的url,如果搞过期时间,每次访问列表还需要访问oss生成一个新的链接,麻烦和性能不说,感觉有没有从根本上避免这个问题。

因为我看到过好几篇同学发帖吐槽过,一页之间OSS被狂刷,损失几百上千的帖子,感觉这确实是个很大的问题,但是貌似确实也没有一个防盗刷很好的解决方法。


回答:

1、流量+存储+数据处理费用。

https://help.aliyun.com/zh/oss/product-overview/billing-examples/?spm=a2c4g.11186623.0.0.8d6b2d1dkA0gi4

2、是。
3、是(如果是浏览器访问,本身会有缓存,同一个资源同一个人同一个浏览器访问多次算一次,因为有缓存)
4、是,且无解。一般是套个CDN,回源只一次,剩下的基本是CDN的流量费不是OSS的了。
5、OSS无需开通,只要有这个URL就能访问,没有这个URL就不能访问。
6、不能。
7、压缩后上传OSS
8、七牛每月10G免费。
9、OSS+CDN


回答:

我是用的阿里云的OSS,我把OSS中的bucket设置成私有了。这样可以禁止用户拿到URL后随意访问,然后再加一层STS token校验,客户端只有请求了STS token获得凭证之后才能访问bucket中的资源,这样可以保证不能随意访问。我只加了一层权限控制,其实还可添加好几层,包括对OSS的访问,对bucket的访问,甚至是对bucket中资源的访问都可以设置。
如果你OSS中的资源需要经常访问的话,可以开通CDN,这样访问速度更快,流量价格也比直接访问OSS低很多。具体的可以查看阿里云的OSS文档。

以上是 请教一个关于OSS存储图片的问题? 的全部内容, 来源链接: utcz.com/p/945477.html

回到顶部