cache snippet

  • what is cache ? why use cache ?
    1. Cache是高速缓冲存储器 一种特殊的存储器子系统,其中复制了频繁使用的数据以利于快速访问
    2. 凡是位于速度相差较大的两种硬件/软件之间的,用于协调两者数据传输速度差异的结构,均可称之为 Cache
  • 缓存的分类
    • 操作系统磁盘缓存->减少磁盘机械操作
    • 数据库缓存->减少文件系统I/O
    • 应用程序缓存->减少对数据库的查询
    • Web服务器缓存->减少应用服务器请求
    • 客户端浏览器缓存->减少对网站的访问

技术框架

  • Encache
    • 设计于提高在数据从RDBMS中取出来的高花费、高延迟采取的一种缓存方案
    • java编写,直接在jvm虚拟机中缓存,速度快,效率高;但是缓存共享麻烦,集群分布式应用不方便。
    • 特点:
      • 简单
      • 袖珍
      • 轻量
      • 扩展
      • 监听器
  • memcache
    • 一种高性能、分布式对象缓存系统,最初设计于缓解动态网站数据库加载数据的延迟性,你可以把它想象成一个大的内存HashTable,就是一个key-value键值缓存。
    • C语言编写
    • 特点:
      • 依赖
      • 多线程支持
      • 高性能
  • redis
    • 通过socket访问到缓存服务,效率比encache低,比数据库要快很多,处理集群和分布式缓存方便,有成熟的方案。
    • 特性:
      • 支持持久化
      • 丰富的数据类型
      • 高性能
      • 主从复制