密级:公开文件上传服务器FUS(fileuploadservice)概要设计项目编号文档版本号-12-19归属部门归属项目编写人编写日期中航国际金网公司技术部版本历史日期版本简要描述信息作者-12--1--01--1- 前言 编写目的 适用范围 42 项目概述 背景 目标 53 概要设计 工作模式 文件上传组件的设计 FUSServer设计 物理部署方式 核心类的设计 文件路径命名约定 124 数据库设计 145 项目目录结构 155.. 165.. 165.. src/main/resource包 176 文件服务器的后台管理 用户管理 应用管理 StorageServer管理 查看所有图片 17前言编写目的编写该文件的目的是描述文件服务器的框架概要设计,有如下好处:确定系统开发功能的范围。供设计人员分析时使用。运维人员在进行部署时的参考。作为软件开发人员进行设计和编码的基础。确定系统测试及验收内容。软件维护的参考资料。作为项目验收标准之一。适用范围业务或需求分析人员、架构设计师、软件开发工程师、测试人员、项目管理人员。项目概述背景对于Web服务器来说,不论是Apache、IIS还是其它容器,图片是最消耗资源的,于是我们有必要将图片与页面进行分离,这是基本上大型网站都会采用的策略,她们都有独立的图片服务器,甚至很多台图片服务器。这样的架构能够降低提供页面访问请求的服务器系统压力,而且能够保证系统不会因为图片问题而崩溃,在应用服务器和图片服务器上,能够进行不同的配置优化,比如apache在配置ContentType的时候能够尽量少支持,尽可能少的LoadModule,保证更高的系统消耗和执行效率。 同时,对于某些应用需要针对某图片进行截取不同尺寸的图片,以节省网络带宽。例如产品图片,往往要提供多个缩略图,例如在列表页为小图,在产品详情页为中图,当鼠标放到中图上再显示大图等。为此上传服务器需要提供图片的适当裁剪成大中小各种尺寸的图片,以适应多种情况。其实,不只是图片耗网络带宽,一切需要下载的文件同样存在着网络带宽的耗用文件。基于以上原因,金网公司开发了文件上传服务器,作为所有新建项目上传图片、文件的统一存放地。为以后的集群、负载均衡等分布式架构提供一定的基础。目标开发文件上传服务器应用程序,对外提供文件上传服务。经过各种参数的设定来完成图片裁剪、图片转换、是否多文件存储等功能,并将文件路径反馈给任务发起方。当前暂不提供图片生成水印功能。同时开辟后台,能够创立应用、查看图片日志,如所有已上传文件的来源地、日期等信息。概要设计工作模式FUS文件服务器可对N台Web应用服务器提供文件上传服务,Web应用服务器中部署了“文件上传组件”。FUS文件服务器分为两个部分:FUSService服务器(简称FUSServer)和文件存储服务器(简称StorageServer)。FUSServer负责为其它Web应用提供上传文件和记录功能,所上传的文件被真实地存储在了StorageServer上。StorageServer既作为物理存储服务器,同时为各个Web应用提供所存储文件的外链功能。即:在Web应用上可经过链接的方式()访问所存储的文件。Web应用服务器与文件服务器的交互过程基本上由4步来完成:第一步:设定FUSConfig各种参数,确定上传模式Web应用服务器中,文件上传组件[即fus文件夹]需要被放入到根目录下。同时,需要上传文件的页面中,进行配置,构造各种参数。。第二步:用户点击上传按钮由于第一步所设置的参数的不同,本步骤的展现形式也不同,主要分为以下两种情况:情况一:弹出文件选择窗口情况二:弹出多选文件选择窗口第三步:上传文件该步骤为根据文件上传组件自动构造参数,将文件上传到FUSServer中。FUSServer接收到传来的文件信息和各种参数后,将文件转存到指定的StorageServer中,并将日志记录到数据库。第四步:将文件上传后的路径返回到客户端文件上传组件会把文件真实路径反馈到客户端。【第五步:当需要人工裁剪时候才会遇到】进入人工裁剪方式,人工裁剪完毕后继续走第三步和第四步。典型应用场景如下图所示:文件上传组件的设计文件上传组件为一组js脚本和css样式以及图片、html等的组合。该组件可被放入任何w
文件服务器规划设计文档 来自淘豆网m.daumloan.com转载请标明出处.