jImage- 图像服务器

来源:互联网 发布:京都工艺品淘宝 编辑:程序博客网 时间:2024/06/04 00:11

jImage图像服务器的设计要点 

 (http://wiki.jteam.cn/bin/view/Main/image-server)

1.       集中访问,分布存储

对着下图,有以下几个特性:  
 
jImage.jpg

1)  用户总是上传图像到离自己最近的一个节点,保证上传最快完成

2)  上传完成后,有一个全局的图像信息记录,用来指明图像所处的节点和存储信息

3)  如果在某个节点上请求了其他节点的图像,会自动将其他节点的图像抓取过来并保存 

2.       原始图像与衍生图像

原始图像是指图像上传的最初图像,衍生图像是指上传后对用户图像进行任何转换的图像,比如缩放,旋转,特效。在Web应用中,衍生图像的访问比例要远远大于原始图像。

针对这个需求设计以下几个特性:

1)       原始图像和衍生图像分开存储

2)       衍生图像可以删除,衍生图像可以由原始图像进行转换得到。 

 3.       静态与动态需求

Web应用中,需要大量的用到衍生图像,比如用户上传了一个头像,可以在其他地方需要用 40x40,100x100 这些衍生图像,而具体有哪些衍生图像类型是很难预料的,尤其在web应用快速变化的时候。

针对这个需求设计以下几个特性

1)       衍生图像都是由一个处理器通过原始图像转换得到。

2)       但访问的衍生图像不存在的时候,则由处理器动态生成  比如,用户上传了一个头像, a1234.jpg

通过 a1234_1_10x10 就可以得到一个10x10 的用户缩略头像,其中 1 就是代表的缩放的处理器,10x10就是参数,以此类推。 

 4.       特殊需求

web应用中,还存在以下几个特殊需求

1)       限制图像的访问,需要密码才能访问图像

2)       对图像进行访问计数

 

试一下: TODO

原创粉丝点击