动静分离

动静分离是让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后,我们就可以根据静态资源的特点将其做缓存操作,这就是网站静态化处理的核心思路,实际上,何谓动?何谓静呢?拿我们java来说jsp、servlet等就是动,因为他们离开我们的web服务器的支持就会无法正常工作。而js、css等文件就是静了。因为离开web服务器他一样能正常的工作。

动静分离简单的概括是:动态文件与静态文件的分离。

为什么要做动静分离?

在我们的软件开发中,有些请求是需要后台处理的(如:.jsp,.do等等),有些请求是不需要经过后台处理的(如:css、html、jpg、js等等文件),这些不需要经过后台处理的文件称为静态文件,否则动态文件。因此我们后台处理忽略静态文件。这会有人又说那我后台忽略静态文件不就完了吗。当然这是可以的,但是这样后台的请求次数就明显增多了。在我们对资源的响应速度有要求的时候,我们应该使用这种动静分离的策略去解决。

动静分离将网站静态资源(HTML,JavaScript,CSS,img等文件)与后台应用分开部署,提高用户访问静态代码的速度,降低对后台应用访问。这里我们将静态资源放到nginx中,动态资源转发到tomcat服务器中。

图片服务器实践

1.准备两台主机

①192.168.124.128

部署Nginx并启动,nginx.conf文件

events {worker_connections  1024;
}http {upstream yj{server 192.168.124.129:8001;}server{listen       8088;location / {proxy_pass  http://yj;}location ~ .*\.(gif|jpg|jpeg|png)$ {root /opt/nginx/images;expires -1; }}
}

并且在图片root路径/opt/nginx/images的sport文件夹下,放有图片1.jpg(此处应该配合FTP进行图片文件的管理,比如上传下载)

②192.168.124.129

部署测试应用,主要用来展示Nginx服务器上面的图片

showImage.jsp文件

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE>
<html>
<head> <%@include file="./comm/commSet.jsp"%><title>Nginx图片服务器</title> </head>
<body> <img src="${ctx}/sport/1.jpg"/>
</body>
</html>

commSet.jsp文件

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:set var="ctx" value="http://192.168.124.128:8088" />

2.验证

访问

http://192.168.124.128:8088/showImage

Nginx反向代理到了129那台机子的8001端口上面的showImage路由,而129部署的项目的jsp页面又引用ip为128的Nginx图片服务器上面的图片资源,展示了出来。

缓存时间expires

①上面的示例中,我们将expires设置为-1,即no-cache,不缓存,每次刷新页面,我们可以观察到

② 我们将expires设置为正数,比如2m,让nginx重新加载其配置文件(./nginx -s reload),再观察

第一次加载页面时

刷新地址栏后

没有加载图片了,数据传输流量明显下降, 等缓存时间过期后,才会重新去加载图片

ps:时间格式

expires  -1; //表示数据不缓存

expires 30s; //表示把数据缓存30秒

expires 30m;//表示把数据缓存30分

expires 10h;//表示把数据缓存10小时

expires 1d;//表示把数据缓存1天

Nginx之图片服务器相关推荐

  1. 使用 Nginx 搭建图片服务器

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者 | ITDragon龙 链接 | cnblogs.com/i ...

  2. Nginx独立图片服务器搭建教程

    Nginx独立图片服务器搭建教程 发布时间:2014-06-04编辑:脚本学堂 本文介绍了nginx独立图片服务器的搭建与配置教程,有需要的朋友参考下. 首先,为什么需要独立图片服务器? 现在主流的网 ...

  3. Nginx 搭建图片服务器

    本章内容通过Nginx 和 FTP 搭建图片服务器.在学习本章内容前,请确保您的Linux 系统已经安装了Nginx和Vsftpd. Nginx 安装 http://www.cnblogs.com/i ...

  4. nginx 配置图片服务器 文件大小,nginx 配置图片服务器 文件大小

    nginx 配置图片服务器 文件大小 内容精选 换一换 该任务指导用户使用Loader将数据从SFTP服务器导入到HDFS/OBS.创建或获取该任务中创建Loader作业的业务用户和密码.确保用户已授 ...

  5. win7下搭建Nginx简单图片服务器

    Nginx搭建图片服务器 Nginx下载地址:http://nginx.org/en/download.html 本例下载的是window版本nginx-1.11.8 以下是我本机操作说明: 一.安装 ...

  6. Nginx,Nginx 搭建图片服务器

    Nginx Nginx 概述 反向代理 工作流程 优点 1:保护了真实的web服务器,保证了web服务器的资源安全 2:节约了有限的IP地址资源 3:减少WEB服务器压力,提高响应速度 4:其他优点 ...

  7. Nginx 独立图片服务器的搭建

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

  8. nginx作为图片服务器

    nginx作为静态资源服务器的性能很强大,此处作为图片服务器使用. 可以利用location的规则,把单独的一个应用作为静态资源访问: server {listen 80;server_name lo ...

  9. 使用nginx作图片服务器的访问权限控制

    说到访问权限控制,很多看了nginx相关文章的朋友都会自然联想到X-Accel-Redirect这个头.这个头有个缺陷,就是所有的访问都会先经过一个fastcgi来判断权限.在下载系统上,用这个方法是 ...

  10. Nginx配置图片服务器(Nginx极简配置说明)

    一.概述 同学们大家好,今天给大家带来Nginx的一篇实践配置总结,主要是Nginx做静态图片服务器的详情配置说明,还包括做反向代理.动静分离.负载均衡的极简配置. 二.Nginx安装 Nginx下载 ...

最新文章

  1. 在Ubuntu 12.04 64bit上配置,安装和运行go程序
  2. CMS垃圾收集器小实验之CMSInitiatingOccupancyFraction参数
  3. 牛客 - 张老师的旅行(dp)
  4. Kettle安装好MYSQL驱动后报用户名密码错误
  5. Linux下检测网络状态是否正常
  6. 我国自主播放软件暴风影音挑落微软
  7. mysql 停数据库_mysql数据库突然停了
  8. Android多线程的使用
  9. Java中break、continue及标签等跳转语句的使用[下]
  10. wincc中c语言做变量自增,在WinCC中如何利用C动作实现变量自动加1-工业支持中心-西门子中国...
  11. 修改Android序列号(Serial Number)
  12. Quorum简介部署
  13. mysql 1032 1062_MySQL 1032和1062跳过错误总结
  14. 知道创宇云安全发布服务器安全产品-365门神
  15. Jetson-DeepStream
  16. Web前端开发——CSS样式之CSS选择器
  17. Linux驱动——ALSA
  18. 【Codeforces】WHU校赛2019 Store(线段树+二分)
  19. Sentinel-2批量大气校正_基于Sen2Cor
  20. 计算机学硕290长安大学,2019长安大学研究生分数线汇总(含2016-2019历年复试)...

热门文章

  1. 咋搭建域控服务器,Active Directory虚拟机搭建域控服务器环境
  2. Scratch《侠盗飞车》游戏源码.sb文件
  3. js之删除对象中的属性——delete、es6解构赋值、自执行匿名函数
  4. js换行符转换html换行
  5. 360亿元买域名,值得吗?
  6. MovePrevious和MoveNext的用法
  7. 小程序开发--content-type类型中application/json和application/x-www-form-urlencoded区别
  8. java代码实现龙卷风_Java-使用二叉树实现快速排序-遁地龙卷风
  9. 3-16 附:DSL搜索 - 布尔查询
  10. 新手学逆向踩坑系列----从找不到DDMS到打不开DDMS