传统项目一般实现图片上传的话,都会在tomcat下面建立一个图片文件夹,上传成功后,用户可以直接访问,

http://ip:port/project/images/xxx.jpg;

这样在用户量少的时候是没有问题的

当你的企业发展起来了,业务量增多了,使用的这个项目开始大起来了,发现系统速度变慢了,那么你就考虑到集群了对吧

那么好,假设你增加了一个tomcatB,性能提高了一点,图片也成功上传了,做了负载均衡,假设图片上传的了tomcatA(用户是不知道的)

第二次访问的时候(先不考虑session粘性不粘性的问题,假设是共享的),用户访问到了tomcatB,图片没有了,是个大叉叉,

我的天呐!发什么什么事了,明明刚刚上传的图片没有了,

再刷新一下,欸!又有了?这是什么情况呢?

后台知道咋回事,但是用户不知道啊!!!

那么解决方案是这样的,tomcatA和B上传至图片服务器,这用户请求的时候只访问图片服务器的路径,这样就没问题了

有人会问图片服务器用什么来搭建呢?

tomcat?可以,但是tomcat主要处理jsp比较好,图片文件是静态资源,处理起来性能一般般

Apache?可以,纯C语言开发的,没问题,但是还不够好

nginx?对了,这个是目前比较流行的一个反向代理服务器,我在之前的文章有简单介绍过(http://www.cnblogs.com/leechenxiang/p/5327086.html

  理论的单台机子并发能达到5万,非常的叼,实际测试是2w左右

安装如下的方案去做,那么图片服务器就问题不大了,

当然,图片上传后,需要把图片的路径地址保存到数据库啊~~

nginx搭建简单的图片服务器的更多相关文章

  1. Unity搭建简单的图片服务器

    具体要实现的目标是:将图片手动拷贝到服务器,然后在Unity中点击按钮将服务器中的图片加载到Unity中. 首先简答解释下 WAMP(Windows + Apache + Mysql + PHP),一 ...

  2. 用nginx搭建简单的文件下载服务器

    server {      listen       80;        #端口      server_name  localhost;   #服务名      charset utf-8; # ...

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

    最近经常有人问图片上传怎么做,有哪些方案做比较好,也看到过有关于上传图片的做法,但是都不是最好的,今天再这里简单讲一下Nginx实现上传图片以及图片服务器的大致理念. 如果是个人项目或者企业小项目,仅 ...

  4. Ubuntu 14.10下基于Nginx搭建mp4/flv流媒体服务器(可随意拖动)并支持RTMP/HLS协议(含转码工具)

    Ubuntu 14.10下基于Nginx搭建mp4/flv流媒体服务器(可随意拖动)并支持RTMP/HLS协议(含转码工具) 最近因为项目关系,收朋友之托,想制作秀场网站,但是因为之前一直没有涉及到这 ...

  5. 170522、Linux 平台通过 nginx 和 vsftpd 构建图片服务器

    Nginx WEB 服务器 Nginx 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev 为俄罗斯访问量第 ...

  6. nginx搭建前端项目web服务器以及利用反向代理调试远程后台接口

    前端同学用nginx搭建自己的web服务器,后台程序专门部署在一台服务器上(我们之前公司就有三套环境,开发/测试/生产),这样做的好处是 1.前端代码基本都是静态文件,重启一次很快,也就几秒钟时间. ...

  7. Linux yum的配置 , python环境管理, nginx搭建简单学习

    Linux yum的配置 , python环境管理, nginx搭建简单学习 一丶配置yum的数据仓库 ### yum 工具, 方便,自行解决软件之间的依赖关系. # 配置yum源仓库 (可以使用,清 ...

  8. mongoDB介绍、安装、搭建简单的mongoDB服务器(一)

    相关网站 1. http://www.mongodb.org/ 官网,可以下载安装程序,和doc,和驱动等. 2. http://www.mongoing.com/ 国内官方网站,博客,问题谈论等  ...

  9. 基于python2【重要】怎么自行搭建简单的web服务器

    基本流程:1.需要的支持     1)python本身有SimpleHTTPServer     2)ForkStaticServer.py支持,该文件放在python7目录下     3)将希望共享 ...

随机推荐

  1. /usr/local/ 和 /opt

    /usr/local:用户级的程序目录,可以理解为C:/Progrem Files/.用户自己编译的软件默认会安装到这个目录下. /opt:用户级的程序目录,可以理解为D:/Software,opt有 ...

  2. centos7下keepalived1.3.4安装与使用

    keepalived是集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障. 一.下载keepalived http://www.keepalived.org/ 如 ...

  3. NPOI创建DOCX常用操作

    1.  创建文档 XWPFDocument m_Docx = new XWPFDocument(); 2.  页面设置 //1‘=1440twip=25.4mm=72pt(磅point)=96px(像 ...

  4. ecplise自动提示失效,使用补全自动提示快捷键(Alt+/),但只显示“No Default Proposals”

    在这里设置了自动提示,但是在使用的时候自动提示实现了.甚至使用补全自动提示快捷键(Alt+/),只显示“No Default Proposals”.今天在网上搜索了一下结果,主要有一下几种方法: 1. ...

  5. windbg 边学边记attach 进程和open dump的两个方式查看线程的占用cpu资源

    首先我是attach到进程的方式,附加到进程把. vs里边有个远程调试就是通过连接到远程机附加到进程操作的.在 有公网IP情况下挺好用,但涉及到nat穿越之类的,因为用户的不方便设置,这种调试方式也有 ...

  6. istio prometheus预警Prometheus AlertManager

    1.安装alertmanager kubectl create -f 以下文件 alertmanager-templates.yaml.configmap.yaml.deployment.yaml.s ...

  7. sed删除行

    删除文件中含有$word字符串的某些行(在文件中修改) sed -i '/$word/d' file

  8. 得到一个Object的属性

    private static object GetPropertyValue(object obj, string property) { System.Reflection.PropertyInfo ...

  9. AJAX-php-json数组

    1.在php中有个数组,响应回前端 $array=["习大大","川普","金三胖"];2.JS对象数据格式 ex: 数组: var TOM ...

  10. 更好的转换规则(深入理解c#)

    从任何类型”转换成他本身“被认为好于“转换成一个不同的类型”,这个规则称为“更好的转换”规则.