This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

1 - FastDFS分布式存储

分布式存储中间件

为什么需要文件服务器?

浏览器请求可能会携带头像文件, 服务器处理后存储在本地磁盘

但是假如还有一个服务需要操作订单

那么就需要异步从存储头像拿头像

也就是说用户信息业务崩溃后, 导致订单服务器也一并崩溃

为了解耦合, 我们把文件存储到专门的服务器里, 保证系统稳定

当用户在订单管理修改信息后, 还需要同步到用户信息服务器

这需要传递两次, 还要保证一致性, 倒不如直接把服务器分离, 只传递文件地址 这样就可以减少服务间的传递, 而且也不需要传递大尺寸的文件, 只要传链接就可以

使用

检查nacos配置 第三方服务

下载地址是由nginx管理的, 所以还需要nginx配置

注入fastdfs客户端 配置文件服务器url 也就是 nginx的IP地址

上传文件 传入 MultipatFile file 首先提取后缀名, 左闭右开去掉点放到新的子串 直接调客户端上传即可 用户回显, 是否上传成功, 看有没有文件信息就可以

下载 也就是响应文件, 创建响应实体内部放字节流 调客户端下载, 传入group组和文件id 下载完成的文件命名, 用时间就可以 定义好的名字回传道响应的响应头

删除文件 还是组和文件id 调客户端删除 回调是int值, 匹配定义的预设输出传回即可