nginx图片服务器优化 解决流量和存储问题

  • 时间:
  • 浏览:41

  图片服务通常数据容量较大,怎么让访问也频繁,鉴于此,图片服务就会有并不是 疑问图片,一是存储疑问图片,二是访问量疑问图片。

  存储疑问图片怎么让硬盘容量疑问图片,花钱买硬盘就还后能 了,看似简单,但确实也是最苦的疑问图片。按目前探索来看,最好的方式 是:在任了吗刻遇到硬盘空间缺乏时,买颗硬盘插上,最多改改配置,就能立刻利用;另外,硬盘后能 充分利用,不然图片存储量大再打上去备份,很恐怖,最好是每颗硬盘都用上3000%的空间。

  访问量也是个疑问图片图片,将会服务不允许防盗链,不到访问量会引起强度、服务器压力等疑问图片,有钱话语直接扔CDN,没钱将会有更多的钱,就被委托人做吧。根据垣古不变的真理“越老的图,访问量也相对较少”并不是 点,分成两大每段,一边补救最新的图片,一边补救老旧的图片。最新的图片访问量大,但存储量较少;老图片访问量低,但存储量大。

最少分析完了,刚刚刚开始英文制定方案。

一、拟定有另另一个存储目录规则:

  在现有的/a/b/abcde.jpg怎么让的hash方式 下多加有另另一个日期的目录变成:/3000810/16/a/b/abcde.jpg将会/30008/10/16/a/b/abcde.jpg。按日期制定并不是 目录规则后,就还后能 按年月来拆机器了。

二、分机器,分硬盘

  按刚刚的计划,分成有另另一个组,一组服务器用lvs做负载均衡负责新图片;另一组服务器做旧图片访问和备份。新图机器找几台好点的服务器,SCSI硬盘;旧图机器没回会 要求,PC机就行,找够硬盘就还后能 ,现在IDE的1T硬盘怎么让太贵,最好再搭个raid就省事了,最主怎么让什么机器要多。

说明一下:

  1. 图片服务通过lvs作为入口,补救能力上还是有保障的。
  2. 利用nginx直接对外服务,回会说用squid。
  3. 图中的红线是指主nginx会将/30006和/30007年的图片分别代理到两台存档服务器,将会发现主nginx的cpu占用比较大,不到还后能 考虑使用nginx的proxy_store将图片存到主服务器上,定期清理。
  4. 图蕴含一台存储分配服务器,作为图片服务更新图片的统一入口,有新图片将会修改图片话语,由这台服务器负责将图片贴到 正确的服务器上去。
  5. 旧图片服务器当前用年份来划分,每年增加两台服务器,亦怎么让加两块硬盘,注意,回会说相信raid,一定要有两台机器,地理上分在有另另一个城市则更好。
  6. 将会旧数据30006和30007年的数据基本上是不到变化的,全都怎么让硬盘够大,不到还后能 把两年的数据合并在同时。
  7. 将会细心定制,不到旧图片服务器的硬盘3000%塞满是还后能 的,旧数据的容量基本上回会大幅增长,小小预留1-2G空间就还后能 了。

  使用并不是 架构话语,硬盘缺乏话语,加硬盘就还后能 了。将会图片量确实回会 ,主服务器连一年的数据都装不下,那还后能 用启用月份来划分;将会有另另一个月都装不下了,那也太夸张了,那就启用日期吧;将会一天的数据都装不下,那就使用小时,依次类推。

Tags: nginx   nginx图片存储   服务器构架  
责任编辑:190