Nginx 独立图片服务器的搭建

  • 为什么需要独立图片服务器?

如果你留心的话,可以发现,现在主流的网站都是有单独的图片服务器的,例如,人人网的为rrimg,淘宝的为taobaocdn,下面还有很多的二级域名。

独立的图片服务器有诸多好处,其中一个就是客户端浏览器对一个主机下的连接数量限制,具体的连接数目忘记了,但基本都在10以下。也就是说,浏览器会控 制一个站点下的并发请求数量在10以下,如果对于网站有很多样式文件、脚本文件和图片需要加载的话,请求的过程会被阻塞,影响网站的打开速度。

建立图片服务器,将图片资源放在另外一个域名下面,会在一定程度上提升网站的打开速度,这样来说的话是不是说我们独立的服务器越多越好呢?也不尽然,解析域名并建立连接也需要很长的时间,独立的主机多了的话,也不利于速度的提升。

图片往往会消耗掉网站中的很多宽带和IO资源,独立的图片服务器可以在宽带和IO性能上单独提升,便于管理和拓展。

关于网站性能方面的经验有很多,最为著名的就是雅虎的14条准则

  • 搭建独立图片服务器的思路是什么?

图片服务器的搭建思路也不难,我大概画了一个图,显示的是我最近两天搭建图片服务器的思路。

网站服务器是Apache + Tomcat, 以前图片的资源全部在tomcat的工程目录下面,随着图片数量的增多,对于图片的管理很不方便,网站的打开速度也不理想。

新的图片服务器用Nginx作为web server,这里有一篇文章分析了lighttpd、apache和nginx的性能,还是值得一看的。

面临的一个问题就是用户上传图片的问题,因为上传的逻辑还是在原来的服务器上,因此,怎么同步两个服务器上的图片是个需要解决的问题。

往往网站需要一张图片的多个尺寸来满足不同的需求,我们也是不例外的,所以,我想到了将用户上传的源图片保存在网站服务器上,通过源图片来生成不同尺寸的图片通过ftp的方式保存到图片服务器上,源图片也相当于做了一个备份。

java 操作ftp十分方便,这也是我选择用ftp的方式来同步图片的原因。

所以,需要在图片服务器上搭建ftp服务,这个教程有很多,不再罗嗦。不过我想提的一点是,red hat企业版有selinux,貌似是个安全机制,需要关掉这个才能上传。

图片服务器上面搭建了tomcat容器的原因是网站需要的图片尺寸有将近20种,没有办法保存每个缩略图,因此用java来实现动态缩放图片的功能,就是类似于 190_h100_w200.jpg 这种格式,长宽随便换。具体的实现方法,有空再写吧。

因为动态生成图片比较耗费资源,因此用在较少访问的页面上,减少了缩略图的个数。

时间: 2024-10-24 12:57:28

Nginx 独立图片服务器的搭建的相关文章

nginx配置图片服务器

这几天研究了一下nginx配置图片服务器的相关内容,个人的一些收获与大家分享一下: Nginx是目前非常流行的web服务器,它起源于俄罗斯.它具有处理速度快,并发量大,占用资源极低等优点,尤其对于静态资源的处理更佳,有测试证明是apache的30倍.现在已经广泛的应用于多家门户网站.中大型网站中,作为反向代理.图片缓存服务器等.本例是结合张宴的blog(http://blog.s135.com/nginx_cache/),做的变动.主站是IIS7.5(192.168.36.70),用的是.net

配置nginx的图片服务器

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86

独立图片服务器的部署(了解)

1.独立的必要性 分担web服务器的I/O负载-将耗费资源的图片服务分离出来,提高服务器的性能和稳定性: 能够专门对图片服务器进行优化-为图片服务设置有针对性的缓存方案,减少带宽成本,提高访问速度: 提高网站的可扩展性-通过增加图片服务器,提高图片吞吐能力. 2.采用独立域名 原因:统一域名下浏览器的并发连接数有限制,突破浏览器连接上的限制. 由于cookie的原因,对缓存不利,大部分web cache都只缓存不带cookie的请求,导致每次的图片请求都不能命中cache 3.独立后的问题 如何

NGINX+PHP+MYSQL服务器环境搭建

这条命令是配置vim的,请确保你能访问github wget -qO- https://raw.github.com/ma6174/vim/master/setup.sh | sh 说明有一些小问题,配置过程中很容易自己修改,自己注意 准备篇: CentOS 7.0系统安装配置图解教程 http://www.centoscn.com/image-text/setup/2014/0724/3342.html 一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewal

Ansible + shell 实现部署fastdfs+nginx 实现图片服务器并提供动态缩放功能;

因为公司阿里服务器变动几次,手动部署了好几次fastdfs+nginx,于是就想到了自动化部署,以下为脚本内容,由于只是想把着功能实现,并未有完完整的判断逻辑: 以下为ansible-playbook及shell及模板nginx-fastdfs及动态缩略图配置; 如有错误,请不吝赐教: --- - hosts: apollo # vars: # filedest: /usr/local/ tasks: - name: prepare fastdfs-nginx-module copy: src=

图片服务器摘抄一

独立网站为什么要使用图片服务器? 如果您的网站存在大量的图片读写操作,我们建议您使用图片服务器.通过使用独立的图片服务器,您可以提高网站性能,改善用户体验,并降低运营成本. 什么是图片服务器图片服务器是专门为图片读写操作优化的独立服务器.运行网站的服务器称为 Web 服务器.通过 Web 服务器,用户可以访问静态网页.Web 应用程序.数据库,或者上传下载图片以及其他多媒体内容.但是,如果网站访问量不断增加,访问速度日趋缓慢,那么就应该考虑将部分功能从 Web 服务器中分离出来.通常,如果网站存

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

利用Nginx和MogileFS架构图片服务器 在之前的文章中以介绍如何搭建MogileFS:这里就不提了. 一,Nginx安装 在标准的nginx安装中增加支持MogileFS的模块,vkholodkov-nginx-mogilefs-module-249f2b0Nginx的配置mogilefs_pass [<key>] {<fetch block>} 使用范围:server,location,limit_except向MogileFS tracker查找URI中指定的关键字,关

图片服务器搭建学习笔记

对于图片的接触,是从简单的上传头像图片开始的. 那是一个所有动态加载的图片只有员工头像的小内网,还是用的ASP.NET的上传控件,传到网站服务器相关目录下,然后用数据库存着文件路径名. 上传的时候页面一篇雪白,没有上传进度,更没有等待画面,文件大了还有假死现象. 后来系统不断升级,同系统中需要上传图片的模块持续增加,系统用户也大幅增多,图片总量已经达到了300G,虽然也不是很大,但已经不适合再跟网站服务器混在一起了,需要做独立图片服务器.同时,服务器也会根据参数决定图片存储(读取)的路径,以及水

腾讯云,搭建nginx静态网站服务器

搭建Http静态服务器环境 任务时间:15min ~ 30min 搭建静态网站,首先需要部署环境.下面的步骤,将告诉大家如何在服务器上通过 Nginx 部署 HTTP 静态服务. 安装 Nginx 在 CentOS 上,可直接使用 yum 来安装 Nginx yum install nginx -y 安装完成后,使用 nginx 命令启动 Nginx: nginx 此时,访问 http://<您的域名> 可以看到 Nginx 的测试页面 [?] 如果无法访问,请重试用 nginx -s rel