Nginx与MogileFS架构图片服务器实例

利用Nginx和MogileFS架构图片服务器 在之前的文章中以介绍如何搭建MogileFS;这里就不提了。

一,Nginx安装


在标准的nginx安装中增加支持MogileFS的模块,
vkholodkov-nginx-mogilefs-module-249f2b0
Nginx的配置
mogilefs_pass
[<key>] {<fetch block>}

使用范围:server,location,limit_except
向MogileFS
tracker查找URI中指定的关键字,关键字能包含任何变量。如果省略了关键字,MogileFS
tracker会把URI中的某个部分当做一个关键字
例如:
location /download/ {

mogilefs_pass {
[……]
}

}
在这个配置例子中,如果请求的URI是/download/example.jpg,MogileFS
会以example.jpg作为关键字去请求资源。
在pmogilefs_pass中的配置模块里面,能定义如何从storage
nod取该文件。例如:
mogilefs_pass {
proxy_pass $mogilefs_path;

proxy_hide_header Content-Type;
proxy_buffering off;
}

$mogilefs_path变量包含了存储在storage
节点中的文件的URL。当proxy中的模块会封装好一个隐藏的名字为mogilefs_fetch_xxxxxx供MogileFS
tracker成功相应后使用。例如
mogilefs_pass {
proxy_pass $mogilefs_path;

proxy_hide_header Content-Type;
proxy_buffering off;

}
mogilefs_methods <[[method 1] method 2 ...
]>
定义那种方法操作MogileFS。GET从MogileFS获取相应资源,PUT新建或替代资源,DELETE从MogileFS中删除资源。
mogilefs_domain
<domain> 定义使用哪个domain对MogileFS进行查询。
mogilefs_class <class0> [
<class1> [ ... ] ] 定义使用哪个class进行操作。
mogilefs_tracker
<IP|IP:port|upstream> 定义tracker的地址
mogilefs_connect_timeout
<time> 连接tracker超时的时间;不能大于75秒。
mogilefs_send_timeout <time>
定义传输数据到MogileFS
tracker的超时时间,如果tracker超过这个时间没有接收到数据,nginx就会关闭该链接。
mogilefs_read_timeout
<time>
更上面的属性的数据传输方向刚好相反。
(参考网址:http://www.grid.net.ru/nginx/mogilefs.en.html
)
以下是我线上图片服务器nginx的其中一段配置:

server {
listen
7070;

expires 1M;

location ~ ^/images/upload/upc/face/ {

rewrite /(.*) $1 break;

mogilefs_tracker 192.168.237.203:6001;

mogilefs_domain imgdomain;

mogilefs_methods get;

mogilefs_pass {

proxy_pass $mogilefs_path;

proxy_hide_header Content-Type;

proxy_buffering off;

}

error_page 404 = /DEFAULT$request_uri;

}
}
这个过过程中error_page 404
必须这样做配置,否则获取不到404状态码。
文件: vkholodkov-nginx-mogilefs-module-249f2b0.tar.gz
大小: 13KB 下载: 下载
该文的原文档可以在http://blog.chinaunix.net/u3/102731/showart_2262702.html取到。


Nginx与MogileFS架构图片服务器实例,布布扣,bubuko.com

时间: 2024-10-09 20:23:32

Nginx与MogileFS架构图片服务器实例的相关文章

Nginx安装手册以及图片服务器部署

1.      安装gcc yum install gcc 2.      安装pcre,pcre-devel 在zhoulh目录下建立source build目录 mkdir source build 进入build目录 创建pcre目录 cd pcre wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.35.zip pcre的版本随着时间可能会变动,可以进入 ftp://ftp.csx.cam.ac.uk/pu

大型网站架构 图片服务器分离

  1   介绍 现在很多的网站上都会用到大量的图片,而图片是网页传输中占主要的数据量,也是影响网站性能的主要因素.因此很多网站都会将图片存储从网站中分离出来,另外架构一个或多个服务器来存储图片,将图片放到一个虚拟目录中,而网页上的图片都用一个URL地址来指向这些服务器上的图片的地址,这样的话网站的性能就明显提高了,图片服务器(ImageServer)的概念也就产生了. 1.1     图片服务器的优势 1, 分担Web服务器的I/O负载-将耗费资源的图片服务分离出来,提高服务器的性能和稳定性.

170116、centos6.4下nginx和ftp搭建图片服务器

一.需要的组件 图片服务器两个服务: Nginx(图片访问): 1.http服务:可以使用nginx做静态资源服务器.也可以使用apache.推荐使用nginx,效率更高. 2.反向代理 实现 负载均衡 ftp服务(图片上传): 使用Linux做服务器,在linux中有个ftp组件vsftpd. 二.Nginx服务器搭建 1.安装Nginx 要求安装vmware虚拟机. Linux:CentOS6.4(32) Nginx:1.8.0 Vsftpd:需要在线安装. 虚拟机以及Linux安装很简单此

Linux平台通过nginx和vsftpd构建图片服务器

因为开发需要,需要在Linux上构建一个独立的图片服务器,此处默认您已安装好Linux系统.系统环境:CentOs6.5,Vmware10 一.Nginx安装 1.nginx安装环境 nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境. 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc:yum install gcc-c++ PCRE(PerlCompatible Regular Expressions)是

centos7 nginx图片 服务器可以访问ftp用户上传的图片资源的配置

注:本文参考了csdn:JAVA_DIRECTION的<nginx和ftp搭建图片服务器>一文.在实践中其文在centos7中还是存在缺陷性的 一:前提条件:是成功的安装好了ftp服务器和nginx服务器:如果没有安装敬请参考<CentOS7 搭建FTP服务器>和 <centos7_ linux : Nginx安装手册> 二:开放ftpuser用户主目录的其他用户的访问权限: 1 [[email protected] home]# chmod -R 777 ftpuse

转:Linux下使用Nginx搭建简单图片服务器

最近经常有人问图片上传怎么做,有哪些方案做比较好,也看到过有关于上传图片的做法,但是都不是最好的,今天再这里简单讲一下Nginx实现上传图片以及图片服务器的大致理念. 如果是个人项目或者企业小项目,仅仅只有十来号人使用的小项目,可以使用如下方案: 用户访问系统,使用上传图片功能,那么图片就上传到你的当前项目所在的tomcat服务器上,在/image下,上传成功后用户可以直接访问 http://ip:port/project/images/xxx.jpg 这样做在用户少的时候是没有问题的 当你的企

大型网站图片服务器架构的演进(转)

在主流的Web站点中,图片往往是不可或缺的页面元素,尤其在大型网站中,几乎都将面临“海量图片资源”的存储.访问等相关技术问题.在针对图片服务器的架构扩展中,也会历经很多曲折甚至是血泪教训(尤其是早期规划不足,造成后期架构上很难兼容和扩展). 本文将以一个真实垂直门户网站的发展历程,向大家娓娓道来. 构建在Windows平台之上的网站,往往会被业内众多技术认为很“保守”,甚至会有点.很大部分原因,是由于微软技术体系的封闭和部分技术人员的短视造成的(当然,主要还是人的问题).由于长期缺乏开源支持,所

大型网站图片服务器架构的演进

在主流的Web站点中,图片往往是不可或缺的页面元素,尤其在大型网站中,几乎都将面临“海量图片资源”的存储.访问等相关技术问题.在针对图片服务器的架构扩展中,也会历经很多曲折甚至是血泪教训(尤其是早期规划不足,造成后期架构上很难兼容和扩展). 本文将以一个真实垂直门户网站的发展历程,向大家娓娓道来. 构建在Windows平台之上的网站,往往会被业内众多技术认为很“保守”,甚至会有点.很大部分原因,是由于微软技术体系的封闭和部分技术人员的短视造成的(当然,主要还是人的问题).由于长期缺乏开源支持,所

一个大型网站图片服务器架构的演进

本文将以一个真实垂直门户网站的发展历程,向大家娓娓道来. 构建在Windows平台之上的网站,往往会被业内众多技术认为很"保守",甚至会有点.很大部分原因,是由于微软技术体系的封闭和部分技术人员的短视造成的(当然,主要还是人的问题).由于长期缺乏开源支持,所以很多人只能"闭门造车",这样很容易形成思维局限性和短板.以图片服务器为例子,如果前期没有容量规划和可扩展的设计,那么随着图片文件的不断增多和访问量的上升,由于在性能.容错/容灾.扩展性等方面的设计不足,后续将会