图片存储那些事

图片存储那些事


1、二进制列


很多关系数据库都支持二进制类型的列,可以把图片转换成二进制,然后存放起来。


2、文件路径


把图片的相对路径,一般是相对网站根目录的路径存在数据库中,把文件存在在本地文件系统。


3、图片服务器


单独的服务器用来存放图片,单独的域名空间,使用某些特殊的文件系统。

图片有很多类型,小图片,大图片,有些图片是有关联系,通常一起使用,有的是产品图,有的是系统图片,有的是用户上传的,有的是平台管理的。

针对不同类型的图片,需要不同的文件系统,有些文件因为显示的时候都是一起显示的,可能需要存放在一起,减少寻道时间,加快IO速度,提高读取效率。


4、分布式,路径无关


MongoDB GridFS


001001001

产品图片


图片越来越多,请求越来越多,提高可用性,提高并行执行,会需要分布式文件系统,实现分布式图片服务,而且图片服务对外应该是存储无关的,路径无关。

外界只是需要存储图片,图片的类型,大小,图片之间的关联,使用频率,是否需要生成缩略图等等业务相关的需求。

图片服务负责具体的存储,存储的类型,位置,路径,返回外界一个唯一的编号就可以了。

当然编号可以设计成有含义的,3位一个含义,比如说:所属子系统,所属类型,相关性,权限,是否允许外链等等。




本文转自 virusswb 51CTO博客,原文链接:http://blog.51cto.com/virusswb/1283324,如需转载请自行联系原作者
上一篇:Python编程:10个面试常问的问题


下一篇:NFV和Hotspot 2.0等加速运营商WiFi发展