2.Cache

所谓缓存,就是将程序或系统经常要调用的对象存在内存中,一遍其使用时可以快速调用,不必再去创建新的重复的实例。这样做可以减少系统开销,提高系统效率。

缓存主要可分为二大类:

  • 1、通过文件缓存,顾名思义文件缓存是指把数据存储在磁盘上,不管你是以XML格式,序列化文件DAT格式还是其它文件格式
  • 2、内存缓存,也就是实现一个类中静态Map,对这个Map进行常规的增删查.
  • 3、分布式缓存,利用redis等内存数据库

这里主要讲内存缓存。核心就是一个Map,利用key和value进行赋值,利用key进行取值。在设计缓存组件时,不可能让内存占用无限大,所以就会有key的过期时间和过期策略,当chche到内存溢出时必须清除掉最早期的一些缓存对象,或最不常用的缓存对象。

基于java的内存缓存组件非常多,java本身利用ConcurrentHashMap就是实现了自己的高并发缓存。

第三方的缓存组件包括EHCache、OSCache、GuavaCahce等等,这里主要讲两个EHCache和GuavaCache。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,898评论 18 399
  • 理论总结 它要解决什么样的问题? 数据的访问、存取、计算太慢、太不稳定、太消耗资源,同时,这样的操作存在重复性。因...
    jiangmo阅读 8,044评论 0 11
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,314评论 19 139
  • 一辈子能有多少次军训 一个口令就马上立定 迎着晨曦 等待着你的来临 趁不注意 动一动我身体 当那太阳在头顶沉了迷 ...
    柒子阅读 1,222评论 0 3
  • 重新思考了什么是家庭,什么是爱 人要心智成熟才能走的更好更远 幸好我没有变成十年后的罗子君,庆幸做出的选择,似曾相...
    慧行慧影阅读 1,859评论 1 0