• Redis学习之路(一)之缓存知识体系


    Redis学习之路(一)之缓存知识体系

     

    转自: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预获取:

     

  • 相关阅读:
    get_folder_size.ps1
    python3-database-shelve
    Windows中实现不依赖账户登录的开机启动程序
    SpringBoot+SpringDataJPA如何实现自定义且自由度高的查询[多表,多查询条件,多排序条件,分页,自定义sql封装]
    Windows phone 8.1之数据绑定(Data Binding)
    TextBox使用技巧--转载
    在Eclipse中使用git把项目导入到git中--转载
    运用多种知识点实现一个综合小游戏
    Git帮助之初始化项目设置向导
    如何从Eclipse导入github上的项目源码--转载
  • 原文地址:https://www.cnblogs.com/txlsz/p/13535062.html
Copyright © 2020-2023  润新知