文件服务器方案 2.0
1. 无独立图片服务器:当前方式
Tomcat 目录下存放图片
优点:实现起来最简单,无需任何复杂技术,保存数据库记录和访问很方便。
缺点:图片的下载会给 Web 服务器增加额外的压力;不易扩展。
2. 单一独立文件服务器(非分布式):
优点:减轻 Web 服务器压力;系统复杂度低,实现容易
缺点:单机存在性能瓶颈,容灾、垂直扩展性稍差
a) p + nginx 搭建文件服务器
使用 linux 服务器,使用 linux 中的 p 组件 vspd
nginx 提供 hp 服务
优点:兼容以前的图片
缺点:性能待测试
b) hp+nginx+php 搭建文件服务器
使用 linux 服务器
使用 hp 协议上传下载,可以在线访问
上传文件后服务器返回经过加密的文件名,上传相同文件返回不同的文件名
文件名动态加密解密,不需要数据库存储
优点:已经实现;
缺点:不兼容以前的图片;上传相同文件返回不同的文件名,业务层需做额外处
理;未进行过性能测试
c) WebDAV+node.js 搭建文件服务器
使用 linux 服务器
使用 hp 协议上传下载,可以在线访问
上传文件后服务器返回一个提取码,上传相同文件返回不同的提取码
提取码和真实文件的映射写入内嵌的 sqllite 数据库,可以换成其他数据库
优点:已经实现
缺点:将现有图片写入数据库后可以兼容现有图片;上传相同文件返回不同的提
取码,业务层需做额外处理;未测试过并发性
3. 分布式文件系统:
优点:易扩展,性能高
缺点:系统复杂度高,部署复杂,运维成本高
a) fastDFS+nginx 搭建分布式文件系统(推荐)
使用 linux 服务器,使用 tracker 协议
评论0