BlessingCR’s Blog
BlessingCR’s Blog

每个人都应该懂的文件方案设计

架构图

https://blessingcr.com/wp-content/uploads/2024/01/result-1.png

5.1 文件上传流程

https://blessingcr.com/wp-content/uploads/2024/01/t0.png
  1. 前端发送文件名,MD5, 文件大小等信息提交后端文件服务[注意只限一个文件,多文件多次请求]
  2. 后端文件服务从OBS获取对应文件上传URL,该URL短期有效,且只能上传该MD5,文件名的文件,上传目录为临时目录。
  3. 后端文件服务返回上传URL与后端数据库唯一Key[key是一个字符串]给前端。
  4. 前端通过URL上传文件。
  5. 前端通过KEY告知后端文件服务,文件上传完成。
  6. 前端提交业务表单,表单中文件部分用文件Key表示。后端业务服务获取Key后,发送请求至文件服务,文件服务请求OBS把文件从临时文件夹移动至具体业务文件夹。
    5.2 文件查看流程
    https://blessingcr.com/wp-content/uploads/2024/01/t1.png
  7. 前端请求业务内容,业务内容中包括文件内容
  8. 后端业务服务通过数据库中存储的Key请求文件服务获取URL
  9. 文件服务通过Key查询具体存放路径和文件名,从OBS获取临时URL,URL会在一定时间后过期
  10. 文件服务返回URL给业务服务
  11. 业务服务返回业务内容和URL给前端
  12. 前端通过URL直接从OBS获取内容

发表回复

textsms
account_circle
email

BlessingCR’s Blog

每个人都应该懂的文件方案设计
架构图 5.1 文件上传流程 前端发送文件名,MD5, 文件大小等信息提交后端文件服务[注意只限一个文件,多文件多次请求] 后端文件服务从OBS获取对应文件上传URL,该URL短期有效,且只能上…
扫描二维码继续阅读
2024-01-15