案例开发-搭建 fastDSF 加 Nginx 文件服务器| 学习笔记

简介: 快速学习案例开发-搭建 fastDSF 加 Nginx 文件服务器。
+关注继续查看

开发者学堂课程【Spring Boot+Vue.js+FastDFS实现分布式图片服务器 :案例开发-搭建 fastDSF 加 Nginx 文件服务器】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/742/detail/13145


案例开发-搭建 fastDSF 加 Nginx 文件服务器

 

搭建 fastDFS 文件服务器

在整个需求流程中,最终用户需要通过 Nginx 代理,从 storage server 下载文件,查看图片。

首先要先集成 fastDFS 和 Nginx 来实现通过 Nginx 可以浏览到 fastDFS 上面的文件。(从后向前)

图片8.png

搭建 fastDFS 文件服务器

1. 安装 fastDFS tracker 和 storage(已安装完毕)

2. 在 storage server 上安装 nginx

在安装文档上面已经写明安装步骤。

图片9.png

在 storage server 上安装 nginx 的作用是?

(1)用客户端请求 Tracker,Tracker 把 storage 服务的 ip 给了客户端,客户端就可以请求 storager,而现在安装了 Nginx,用户可以直接使用 Nginx,最终访问 storager,但会通过负载均衡代理后,即需求中先访问图片服务代理,再访问 fastDFS 文件系统。

(2)以前是通过 storager 访问最终的文件系统,而现在用户通过 Nginx,再通过 http 可以直接访问 fastDFS 文件系统。

所以作用是:在 storage server 上安装 nginx 的目的是对外通过 http 访问 storage server上的文件。

(3)在 storage server 上集成 nginx 用到了模块 FastDFS-nginx-module,它的作用是?

图片10.png

用户将图片上传到 storager1-1,通过 http,Nginx 请求到该组的 storager 后,但没有请求到 Storager1-2 中的文件,在文件没有同步过去的情况下,Storager1-2 上面的 Nginx 模块的作用就是发现本机中的 storage 里面文件不存在的情况下,会去查原来文件所在的 storage,如果可以找到就会将请求定向到该 storage 中去。

Nginx 模块是通过 tracker 得知原文件上传到哪一个 storage 中去的。因为 tracker 中有很多文件,他知道哪一个文件在哪里。所以 FastDFS-nginx-module 模块很重要!!

作用1:通过 http 方式访问 storage 中的文件

作用2:当 storage 本机没有要找的文件时向源 storage 主机代理请求文件。

安装之后可以启动 Nginx,cat Nginx-fdfs.conf 使用该文件进行启动。

图片11.png

在 storage 服务器可能有 M00 驱动器也可能有 M02 驱动器,所以需要配置虚拟的目录,在配置虚拟目录的时候用到了 ngx_fastdfs_module 模块。配置好后重新启动 Nginx。

图片12.png

刚刚已经上传了该文件,接下来就可以通过 Nginx 访问。

在页面中输入:

http://192.168.10.64/group1/M00/00/02/wKhIQFrKX0mATW LAALcAg10vf4198.png  

回车即可成功通过http的方式访问图片。当 storage 服务器上面集成了 nginx,就可以通过 http 的方式进行访问。这就是集成了 Nginx。

图片13.png

3. 在安装图片服务代理

用户先请求的就是图片的代理,图片代理的作用就是负载均衡,他的下面连接了很多的 storage,用户先请求图片代理,由代理服务,把图片请求转发到 storage 上。

图片14.png 

在这里已经有了一个 storage,如果将来还需要另外的一个 storage 只需要再次配置即可,起到负载均衡的作用。非常方便。

图片15.png 

这是配置了一个图片服务的 Nginx 的图片服务的代理。所有的访问/ group1 的路径都通过负载均衡转发到上面的服务器上。以上代理则配置完毕。

所以说刚刚的访问地址由 group1开头,就开始从服务器上面找均衡负载进行转发,转发请求到不同的服务器,而不同的服务器又有配置 storage。

以上则能够成功实现通过 http 访问 storage 的功能。

相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
19天前
浅谈基于openresty(nginx+lua)开发轻量级,按流量控制的灰度模块(下)
浅谈基于openresty(nginx+lua)开发轻量级,按流量控制的灰度模块
23 0
|
19天前
|
负载均衡 应用服务中间件 测试技术
浅谈基于openresty(nginx+lua)开发轻量级,按流量控制的灰度模块(上)
浅谈基于openresty(nginx+lua)开发轻量级,按流量控制的灰度模块
41 0
|
1月前
|
应用服务中间件 API nginx
在内网开发中使用Nginx代理来访问钉钉新版服务端API
在内网开发中使用Nginx代理来访问钉钉新版服务端API
81 1
|
3月前
|
负载均衡 前端开发 JavaScript
【Node.js实战】一文带你开发博客项目之联调(导入HTML、Nginx反向代理、CORS解决跨域、与前端联调)
【Node.js实战】一文带你开发博客项目之联调(导入HTML、Nginx反向代理、CORS解决跨域、与前端联调)
|
5月前
|
JSON Java 应用服务中间件
GIS开发:nginx发布常用数据
GIS开发:nginx发布常用数据
111 0
|
5月前
|
消息中间件 缓存 运维
大型医院云HIS系统源码 基于Angular+Nginx+Java+Spring开发 SaaS应用
本套云HIS系统采用主流成熟技术开发,软件结构简洁、代码规范易阅读,SaaS应用,全浏览器访问前后端分离, 多服务协同,服务可拆分,功能易扩展。多集团统一登录患者主索引建立、主数据管理,统一对外接口管理。 商业级源码,带电子病历,过四级,有演示!云his系统源码 SaaS应用 功能易扩 统一对外接口管理.
125 0
大型医院云HIS系统源码 基于Angular+Nginx+Java+Spring开发  SaaS应用
|
8月前
|
XML 负载均衡 前端开发
服务器端知识库nginx搭建文件服务器
作为一名前端开发者,使用nginx配置静态web服务器是我们经常使用的功能之一。此外对于nginx的其他功能,比如说负载均衡,反向代理之类的我们接触的比较少。但是我认为要想掌握nginx这一大利器,我们就需要去多多了解他所具备的功能,以及nginx的设计架构和原理,而如果想要快速的掌握这块,我觉得动手去使用nginx是最快的途径之一。本章记录下搭建nginx的过程。
|
9月前
|
存储 应用服务中间件 Linux
FastDFS+Nginx实现文件服务器
FastDFS+Nginx实现文件服务器
FastDFS+Nginx实现文件服务器
|
Ubuntu NoSQL Java
写给Java开发看的 Docker 干货(零基础部署Nginx MySQL SpringBoot)
Docker是当下使用最多的一种容器技术,想精通Docker并不容易,在公司生产中会有专门的运维人员负责。但是身为开发人员 ,适当的学习Docker是必要的。Docker的好处这里就不介绍了,网上一搜一大堆。 本篇将用最简短的篇幅介绍开发人员需要学习的Docker干货,你将学习到
写给Java开发看的 Docker 干货(零基础部署Nginx MySQL SpringBoot)
|
域名解析 弹性计算 负载均衡
全栈开发之前、后端服务部署:Nginx源码安装,反向代理,静态资源服务,生产环境跨域,负载均衡
全栈开发之前、后端服务部署:Nginx源码安装,反向代理,静态资源服务,生产环境跨域,负载均衡
197 0
全栈开发之前、后端服务部署:Nginx源码安装,反向代理,静态资源服务,生产环境跨域,负载均衡
推荐文章
更多