转自:https://www.unixhot.com/page/cache

缓存分层 缓存分级 内容 内容简介/主要技术关键词
用户层 DNS 浏览器DNS缓存 Firefox默认60秒,HTML5的新特性:DNS Prefetching
    应用程序DNS缓存 Java(JVM)、PHP语言本身的DNS缓存
    操作系统DNS缓存 客户端操作系统DNS缓存
    DNS缓存服务器 专用的DNS缓存服务器、LocalDNS缓存
  浏览器 浏览器缓存 HMTL5新特性:Link Prefetching
      基于最后修改时间的HTTP缓存协商: Last-Modified
      基于打标签的HTTP缓存协商: Etag
      基于过期时间的HTTP缓存协商: Expires、cache-control
代理层 CDN 反向代理缓存 基于Nginx+(Squid、Varnish、ATS)等,一般有多级
Web层 解释器 Opcache 操作码缓存
  Web服务器 Web服务器缓存 Apache(mod_cache)、Nginx(FastCGI缓存、Proxy cache)
应用层 应用服务 动态内容缓存 缓存动态输出
    页面静态化 动态页面静态化,需要专门用于静态化的CMS
    Local Cache 应用本地缓存,PHP(Yac、Xcache) Java(ehcache)
数据层 分布式缓存 分布式缓存 Memcache、Redis等
  数据库 MySQL MySQL自身缓存、innodb缓存、MYISAM缓存
系统层 操作系统 CPU Cache L1(数据缓存、指令缓存) L2、L3
    内存Cache 内存高速缓存、Page Cache
物理层 Raid卡 Raid Cache 磁盘阵列缓存(Raid卡可以控制是否使用磁盘高速缓存)
  磁盘 Disk Cache 磁盘高速缓存

一、用户层缓存

1、查看谷歌浏览器DNS缓存信息方法

查看谷歌浏览器DNS缓存信息方法:chrome://net-internals/#dns,如图谷歌浏览器中缓存了自身访问的网站DNS缓存解析记录,在下一次进行访问时,不需要再进行域名解析,可以直接请求服务器IP地址,当然前提是在DNS的缓存时间没有失效。

2、DNS预获取

  DNS预获取是属于前端优化的一种手段,dns-prefetch可以提升页面的载入速度。一般来说,在前端优化中与DNS有关的有2点:一个是减少DNS的请求次数,另一个就是进行DNS预获取。

什么是 DNS Prefetch ?

    DNS Prefetch 是一种DNS 预解析技术,当你浏览网页时,浏览器会在加载网页时对网页中的域名进行解析缓存,这样在你单击当前网页中的连接时就无需进行DNS的解析,减少用户等待时间,提高用户体验。

如果要浏览器端对特定的域名进行解析,可以再在页面中添加link标签实现。例如京东的页面就进行了DNS预获取:

Redis学习之路(一)之缓存知识体系的更多相关文章

  1. Redis——学习之路四(初识主从配置)

    首先我们配置一台master服务器,两台slave服务器.master服务器配置就是默认配置 端口为6379,添加就一个密码CeshiPassword,然后启动master服务器. 两台slave服务 ...

  2. Redis——学习之路二(初识redis服务器命令)

    上一章我们已经知道了如果启动redis服务器,现在我们来学习一下,以及如何用客户端连接服务器.接下来我们来学习一下查看操作服务器的命令. 服务器命令: 1.info——当前redis服务器信息   s ...

  3. Redis——学习之路三(初识redis config配置)

    我们先看看config 默认情况下系统是怎么配置的.在命令行中输入 config get *(如图) 默认情况下有61配置信息,每一个命令占两行,第一行为配置名称信息,第二行为配置的具体信息.     ...

  4. Redis学习之路(000)- 目录

    本文是博主学习整理网上大神的文件以及自学的心得. Redis学习之路(000)- 目录 Redis学习之路(001)- Redis介绍以及安装(Linux) Redis学习之路(002)- Ubunt ...

  5. 你有自己的Web缓存知识体系吗?

    赵舜东 江湖人称赵班长,曾在武警某部负责指挥自动化的架构和运维工作,2008年退役后一直从事互联网运维工作.曾带团队负责国内某电商的运维工作,<saltstack入门与实践>作者,某学院高 ...

  6. Redis 学习之路 (010) - redis命令手册

    Redis 键(key) 命令 命令 描述 Redis DEL 命令 该命令用于在 key 存在是删除 key. Redis Dump 命令 序列化给定 key ,并返回被序列化的值. Redis E ...

  7. Redis学习之路(二)之Redis入门基础

    一.Redis基本介绍 (1)Redis介绍 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(string ...

  8. redis——学习之路五(简单的C#使用redis)

    redis官方推荐使用的客户端程序 打星星表示推荐使用的客户端程序,一个笑脸表示最近6个月内有过正式活动的.http://redis.io/clients/#c 从这里我们可以判断官方推荐我们使用Se ...

  9. Redis——学习之路一(初识redis)

    在接下来的一段时间里面我要将自己学习的redis整理一遍,下面是我整理的一些资料: Redis是一款依据BSD开源协议发行的高性能Key-Value存储系统(cache and store),所以re ...

随机推荐

  1. Python初学者第二十二天 函数进阶(1)

    22day 1.函数命名空间: 2.函数作用域的查找顺序:LEGB locals->enclosing function ->globals ->_builtins_ a.local ...

  2. HashMap集合特点

      >HashMap集合特点 HashMap:是基于哈希表的Map接口实现. 哈希表的作用是用来保证键的唯一性的.          不明白,直接看HashMap的put方法源码 //HashM ...

  3. rman恢复方案和oracle异机恢复

    这篇文章主要介绍了rman恢复方案和oracle异机恢复,需要的朋友可以参考下 注:①恢复的前提是已经做好备份②完全恢复数据库是数据库遇到故障,在恢复时候没有丢失任何已经提交事物数据的恢复不完全恢复数 ...

  4. Ubuntu 14.04安装QQ2012

    GTkqq ,pidginQQ........等多多少少都存在一定的缺陷和问题. linuxQQ 有各种版本,这里介绍两种:linuxQQ(基本已不支持) 和 wineQQ (推荐使用) 1 ---- ...

  5. spring中MessageSource的配置使用方法3--ResourceBundleMessageSource【转】

    本文转载仅供自己学习收录,不做任何商业用途,如有需要请访问原地址:http://blog.csdn.net/qyf_5445/article/details/8124431 ApplicationCo ...

  6. Echarts 曲线数少于图例数解决方法

    在上一篇文章 Echarts 多曲线“断点”问题解决方法 中说到了Angular 项目中要使用 Echarts 的方法. 说明了自己解决当“每一条曲线的横坐标不相同”时,在各条曲线上,它们的值采用数组 ...

  7. css3实现 依次出现三个点(一般用于提示加载中。。。 提交中。。。)

    <a href="javascript:" class="login">登录中<span class="dotting"& ...

  8. BZOJ4259:残缺的字符串(FFT)

    Description 很久很久以前,在你刚刚学习字符串匹配的时候,有两个仅包含小写字母的字符串A和B,其中A串长度为m,B串长度为n.可当你现在再次碰到这两个串时,这两个串已经老化了,每个串都有不同 ...

  9. BZOJ4802:欧拉函数(Pollard-Rho,欧拉函数)

    Description 已知N,求phi(N) Input 正整数N.N<=10^18 Output 输出phi(N) Sample Input 8 Sample Output 4 Soluti ...

  10. shell基础--shell特殊变量

    一.变量列表 二.实验 系统:centos 7 1.特殊变量 [root@~_~ day2]# cat p.sh #!/bin/bashecho '$0:'$0echo '$*:'$*echo '$@ ...