【网上商城】--图片保存位置分析

小伙伴们在逛淘宝或者是京东的时候,都能看见一张张的图片,比如现在正值冬季,我们需要买一件羽绒服,打开淘宝,在搜索框中输入羽绒服,商家通过各种帅哥美女从不同的角度来展现羽绒服,通过一张张的图片从不同的侧面烘托各种羽绒服的细节,但是小伙伴们有没有思考过,在编程实现的过程中,我们是如何处理图片的呢?图片保存到哪儿?用户如何访问图片?需要什么样的服务器?需要什么样的协议?那时年少,逛淘宝的时候,哪想到这么多,只是一心想着赶紧买到美美的衣服,美美的穿上,时光变迁,造化弄人,阴差阳错,鬼使神差,不知道前世怎么样的回眸与擦肩,让小编走上了coding这条路`(*∩_∩*)′。今天这篇博文,小编就来简单分析一下图片的保存位置,希望可以帮助到有需要的小伙伴们,不足之处,还请小伙伴们多多指教`(*∩_∩*)′。

上传图片,我们主要考虑一个问题,图片上传到哪儿了?图片保存的位置,没错,图片可以保存到数据库,但是存在数据库太慢了,用户体验不好,so,我们需要保存一个图片路径就ok了,我们首先来看一下传统的项目图片存储的位置,传统项目只有一个web工程,我们上传图片保存到哪儿呢?如下图所示:

这样存储的好处是,我们可以在jsp页面直接访问图片,工程名加上image图片文件名就可以直接访问图片了,直接放在WebRoot下面,我们可以在网页上直接访问。客户端做请求,用户上传图片,把图片保存到image文件夹,如果用户需要访问图片,直接访问/image/xxx.jpg,这样就可以直接访问到图片了,这就是我们的传统项目,如果图片太多,我们可以在Linux系统中映射盘符,那么这个存储空间是可以进行扩展的,把上面的话转成图片的形式,如下所示:

用户越来越多,并发量越来越大,一个tomcat支撑不住了,最简单的方法就是做tomcat集群,并发增加后,添加服务器,做tomcat集群,这个时候就不是一个tomcat了,我们来看一下现在的结构,如下图所示:

如上图所示,现在有两个tomcat,这个时候,我们前端需要一个负载均衡的服务器,由她来决定哪个tomcat为用户提供服务,现在用户做请求,有可能是tomcat1为用户提供服务,也有可能是tomcat1为用户提供服务,这时候,用户上传了一个图片,此时恰巧是tomcat1为用户提供服务,如上图所示,然后这个时候呢?用户又访问了一下图片,看看自己有没有把图片上传上去,第二次请求让tomcat2为用户提供服务,然后就去tomcat2找图片,找不到是不是,报了一个咱们再熟悉不过的错误404,用户不知道咋回事,我明明把图片上传上去了,为什么没有图片呢?真是见鬼!!!我们当然知道啦`(*∩_∩*)′,因为图片是上传到tomcat1上面了,当然找不着喽,那么我们该如何解决这个问题呢?总不能在出现这个问题的时候我们再思考如何解决,在设计阶段的时候,我们就需要考虑到这个问题,所以,在我们的集群环境中,存在这样的问题:有时候可以访问到图片,有时候访问不到,如何解决呢?我们肯定是有多台服务器的,那么我们把图片服务器弄成一台不就ok了吗?不管哪个tomcat需要上传图片,把这个图片都上传到图片服务器,增加一个图片服务器,如下图所示:

如上图所示,我们弄了一个图片服务器,是一个专门放置图片的服务器,我们访问图片通过http形式直接访问,so需要一个http服务,有了这个http服务器,我们就可以访问一个域名加上图片的路径,直接访问到图片了,那么这个服务我们如何实现呢?我们可以用tomcat,但是性能不是很高,我们可以使用apache,apache是一个组织,同时人家也是一个服务器哦`(*∩_∩*)′,当然现在比较流行的是nginx,现在nginx的名声已经远远大过apache,nginx可以实现反向代理,可是实现负载均衡,速度也是杠杠的`(*∩_∩*)′,我们可以选择nginx来实现我们的http服务,ok,我们的http服务用nginx,http可以让用户访问到,接下来面临的问题就是,我们如何把图片放上去呢?我们把图片上传到tomcat上,怎么样才能把图片弄到图片服务器上呢?我们可以采用ftp服务上传图片,ftp是一个协议我们使用linux自带的ftp服务器vsftpd。ok,博文介绍到这里,图片保存的位置分析就接近尾声了,在这里小编补充几点知识,http、ftp,详细讲解见下面:

http协议

http,英文名称HyperText Transfer protocol,是互联网上应用最为广泛的一种协议,所有的WWW文件都必须遵守这个标准,设计http最初的目的是为了提供一种发布和接收html页面的方法。http协议,是用于从WWW服务器传输超文本到本地浏览器的传输协议。它可以使浏览器更加高效,使网络传输减少。她不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。HTTP协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端。HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求报文,请求报文包含请求的方法、URL、协议版本、请求头部和请求数据。服务器以一个状态行作为响应,响应的内容包括协议的版本、成功或者错误代码、服务器信息、响应头部和响应数据。下图表明了这种请求/响应模型:

ftp协议

FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。简单来说,支持FTP协议的服务器就是FTP服务器,

与大多数Internet服务一样,FTP也是一个客户机/服务器系统。用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。比如说,用户发出一条命令,要求服务器向用户传送某一个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。客户机程序代表用户接收到这个文件,将其存放在用户目录中。

小编寄语:该博文小编主要分析了图片的存储位置,简单来说需要两个步骤,第一步,上传图片;第二步,把图片上传到ftp服务器,对于tomcat2也是同样的操作,这个时候,图片就在服务器上,这个时候,我们就可以通过http服务访问图片了,直接访问ftp就ok了,这个时候tomcat1和tomcat2上面就没有图片了,so我们需要一个图片服务器上,另外小编还简单介绍了http协议和ftp协议,更多知识,还请小伙伴们自己百度谷歌哦`(*∩_∩*)′,在接下来的博文小编将介绍图片服务器的搭建,敬请期待`(*∩_∩*)′!

  • 上一篇Excel下拉框多列显示,如何只显示一列
  • 下一篇【Java集合系列】---总体框架

【网上商城】--图片保存位置分析相关推荐

  1. Typora修改图片保存位置

    Typora默认的图片保存位置是在c盘内,我们粘贴进文档里的文件都存到了这里,会占c盘的空间,还得定时清理. 个人修改成功效果图如下,可见默认c盘不再存储粘贴进来的图片 修改过程: 1.[文件]--- ...

  2. Obsidian | 保存图片到指定文件夹 | 图片保存位置

    Obsidian 设置图片保存位置 请先将Obsidian的语言改为中文版,之后参考以下流程设置图片保存位置. 在Obsidian的页面编辑时,可以到文件夹里拷贝一张图片,然后到Obsidian页面粘 ...

  3. SSM柳州博物馆文创产品网上商城系统 计算机毕设源码14620

    摘  要 随着科学技术的飞速发展,社会的方方面面.各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,博物馆文创产品网上商城系统当然也不能排除在外.博物馆文创产品网上商城系统是以实际运 ...

  4. SpringBoot图片保存与读取

    参考大佬博客的链接:https://www.cnblogs.com/zimug/p/13474233.html SpringBoot版本:2.3.7.RELEASE 发布时间:2022年3月 介绍: ...

  5. js面向对象模拟京东商城图片放大效果

    js面向对象模拟京东商城图片放大效果 JavaScript 的核心是支持面向对象的,同时它也提供了强大灵活的 OOP 语言能力.本文简单介绍一下使用JavaScript面向对象思想模拟京东商城鼠标悬浮 ...

  6. 上传问题分析1--文件保存位置

    上传文件在服务器端保存位置问题1.保存在可以被浏览器直接访问的位置例如:商城的商品图片保存在工程的WebRoot下的路径(不包含META-INF以及WEB-INF目录及其子目录)2.保存在不能被浏览器 ...

  7. python批量读取图片gps位置_某少儿不宜网站图片拍摄位置分析,Python批量读取图片GPS位置!...

    原标题:某少儿不宜网站图片拍摄位置分析,Python批量读取图片GPS位置! 1. python读取图片exif属性中的GPS信息 智能手机或平板如果在拍照时开启定位服务,照片中就会记录拍照位置信息和 ...

  8. 利用 Python 对某网上商城进行战略分析

    本项目参考自<活用数据> 战略分析 为了确定企业的使命和目标,所以需要进行战略分析.分析思路就是从研究目的到研究内容的细分.所以要解决两个问题,战略分析的研究目的,以及战略分析的研究内容. ...

  9. excel:数据分析----某购物中心网上商城战略分析

    文章目录 一.介绍 二.研究目的 三.研究内容:环境分析 1.宏观环境分析 2.市场环境分析 3.竞争环境分析 四.定性与定量分析方法 1.定性:SWOT分析 2.定量:内外因素评价矩阵 五.内外因素 ...

  10. SSH—网上商城之商品图片文件上传

    前言 网上商城中的淘宝图片要显示在页面的前提是图片应该已经在数据库里面,那么怎么实现图片的上传功能呢,这就是今天要说的主题. 内容 需求: 商城后台需要添加图片文件,用来图片显示 解决方式: Stru ...

最新文章

  1. HDU4080 Stammering Aliens(二分 + 后缀数组)
  2. 简单介绍vue获取token实现token登录的示例代码
  3. Linq专题之提高编码效率—— 第一篇 Aggregate方法
  4. python解析html模块_Python HTMLParser模块解析html获取url实例
  5. 数据库杂谈(五)——关系数据库语言
  6. 全国电视直播v1.0
  7. LINUX如何让内存FREE变大,Linux性能优化(内存:free + top +vmstat )
  8. 【UML】用例图Use Case diagram(转)
  9. android 监听 h5 window,H5嵌入APP后,通过window.WebViewJavascriptBridge原生APP与H5之间交互...
  10. 亲密关系沟通-【认识需求2】-建立良好沟通环境
  11. testbench的简单例子和模板
  12. 骑士人才系统4.0,5.0火车头数据抓取
  13. ps怎么去掉框框不伤字体_PS如何去掉和替换图片中的文字? 照着学就行了
  14. 3dmax晶格指令制作石墨烯模型的图文教程
  15. WebSphere概述
  16. 刘宇凡:罗永浩的锤子情怀只能拿去喂狗
  17. 数据库的研究内容主要有哪些方面?
  18. 基于51单片机的DAC0832波形发生器
  19. 中国石斑鱼养殖产量不断上升,捕捞产量逐渐下降「图」
  20. 四川电信IPTV路由器DHCP鉴权登陆自动获取IP

热门文章

  1. DirectX11环境配置
  2. 数学建模overleaf模板_数学建模论文怎么写?快来pick最优万能模板,一文格式全搞定!...
  3. crc循环冗余校验码c语言,CRC循环冗余校验码的生成
  4. 基于单片机的十字路口交通灯设计(带左转带紧急按钮带调时间)
  5. 计算机制图作品答辩,工程制图(第一章)答辩.ppt
  6. 发包Byte速率和发包个数速率和带宽的关系
  7. adobe bridge是什么软件?
  8. Linux-4.x_x _64 内核配置选项简介
  9. linux怎么用jconsole_怎么在linux jconsole
  10. 终端仿真程序-SecureCRT 绿色版提供下载