05 - 网站分布式存储系统详细文档.docxVIP

  • 3
  • 0
  • 约8.72千字
  • 约 23页
  • 2019-08-07 发布于福建
  • 举报
PAGE 6 NUMPAGES 14 文件存储发布系统详细设计文档 艺龙网信息技术(北京有限公司) - PAGE 1 - 内部文档 禁止外传 文件存储发布系统详细设计 所在项目 网站部文件存储发布系统(EFC) 业务owner 责任架构师 罗智 文档编写 邱梁、柳锡荣 目 录 TOC \o 1-3 \h \z \u 1 业务背景 1 1.1 名词解释 1 2 设计目标 2 2.1 功能子模块 3 2.1.1 后端管理模块 3 2.1.2 前端映射模块 3 2.1.3 存储模块 3 2.2 设计的性能指标 3 3 系统环境 3 3.1 外部系统依赖 3 3.2 内部系统交互 4 3.2.1 后端管理模块 4 3.2.2 前端映射模块 4 3.2.3 文件存储模块 4 3.3 数据规模预估 4 4 整体设计 5 4.1 系统简介 5 4.1.1 核心思路 5 4.2 整体业务流程 5 4.2.1 管理端文件操作流程 5 4.2.2 发布站点文件请求流程 6 4.3 整体架构 7 4.4 数据模型 8 5 文件管理 10 5.1 功能描述 10 5.2 用户case 10 5.3 实现流程 12 5.4 对外接口 12 5.4.1 上传文件接口 12 5.4.2 重命名文件 13 6 映射模块 13 6.1 映射模块意义 14 6.2 映射模块工作流程 14 7 性能及风险 15 7.1 性能 15 7.2 风险 15 7.2.1 系统处理并发量 15 7.2.2 系统存储容量 16 7.2.3 DB处理能力 16 8 运维部署 16 8.1 部署结构 16 8.2 部署说明和关键配置 17 9 附件及参考资料 18 艺龙网信息技术(北京)有限公司 第 PAGE 15 页 共 SECTIONPAGES 19 页 业务背景 一类需求是网站的各个频道在做促销或类似活动的时候,需要上传一些静态的文件,包括促销、活动页面、图片、CSS、JS文件等;另一类需求是各频道CMS区域所依赖的一些图片文件或其他类型文件,比如压缩包、APP包等;目前公司采用的是 FTP管理方式,由业务人员将制作好的文件直接上传到FTP服务器(NAS)。但现有的管理方式存在如下的一些问题: FTP的方案在管理上比较麻烦,例如文件权限问题、静态资源服务器和NAS的交互问题。 业务人员的操作没有log可查,出现问题后不好排查。 NAS存在单点故障 功能单一,无法提供更深层次和多样化的需求 文件不支持版本控制,例如:回退操作 文件存储发布系统设计用来解决大量静态文件的存储和访问,易于管理和扩展,基于fastdfs,是一套高可用高性能的分布式存储系统。 名词解释 EFC 文件存储发布系统简称(Elong File Cloud) FastDFS FastDFS是一个开源的轻量级高性能的分布式文件系统。它解决了大数据量存储和负载均衡等问题,特别适合以中小文件(建议范围:4KB file_size 500MB)为载体的在线服务,如相册网站、视频网站等等,具有超大数据存储、数据高可用(冗余备份)、读写高性能、高并发,海量数据计算、支持多语言客户端等优点。 Git Git是一个分布式版本控制/软件配置管理软件,原来是linux内核开发者林纳斯·托瓦兹为了更好地管理linux内核开发而创立的,具有速度快、离线操作、强大的分支、merge功能等特性,目前很多公司很多著名的软件都在使用git来进行版本管理。 Nginx 是一个轻量级高性能的http和反向代理服务器,同时也可作为负载均衡使用,高性能,高可用,目前很多大型公司都在使用。 jquery.loadtemplate 一个jquery的页面模板插件,使数据model和UI元素分离,可以自定义显示定制化的样式。 WebUploader 由百度fex团队开发的支持h5、Flash的开源现代化上传组件,支持pc、ios、Android,分片、并发上产大文件,支持拖拽、ctrl v上传,支持预览、压缩等。 Semantic UI 语义化的开源前端框架,css 、js的书写语义化更易懂,强大的组件,使得学习和开发成本降低。 设计目标 该系统的整体设计目标可以概括为如下几点: 核心需求:可以很方便的上传文件,并且将文件发布到线上。 具有较好的使用体验,文件管理方式直观、简洁。 支持文件版本控制。 发布站点支持多域名。 系统满足高可用需求,易于横向扩展。 具备良好的访问性能。 功能子模块 后端管理模块 后端管理模块主要是对文件、域名配置、用户的管理,包括文件的上传、

文档评论(0)

1亿VIP精品文档

相关文档