起航学习网

- 让每个人都能学到最前沿新知识、新技能!
起航学习网
当前位置: 起航学习网 > 短期培训 > 编程语言 > Java缓存技术详解

Java缓存技术详解

时间:2022-06-08 14:14:52来源:IT培训网 作者:Java学习网 已有: 名学员访问该课程

  快捷搜索:java缓存技术

前言: Java缓存技术是什么?很多小伙伴对此还不是很了解,下面就由小编来告诉大家。 1.什么是Java缓存? (1)Cache是​​高速

Java缓存技术是什么?很多小伙伴对此还不是很了解,下面就由小编来告诉大家。

1.什么是Java缓存?

(1)Cache是​​高速缓存的特殊内存子系统,将常用的数据复制在其中,方便快速访问。

(2)对于速度差异较大的两种硬件/软件,使用协调两者数据传输速度差异的结构,可以称为Cache.

2.缓存的分类

不同层次的系统架构之间,为了加快访问速度,可以有缓存

操作系统磁盘缓存 -> 减少磁盘机械操作

数据库缓存 -> 减少文件系统 I/O

应用程序缓存 -> 减少对数据库的查询

Web 服务器缓存 -> 减少应用程序服务器请求

客户端浏览器缓存 -> 减少对网站的访问

3.操作系统缓存

(1)文件系统提供的磁盘缓存:操作系统会将经常访问的文件内容放入内存,由文件系统管理。

(2)应用程序通过文件系统访问磁盘文件时,操作系统从Disk Cache中读取文件内容,加快了文件读取速度。

(3)Disk Cache由操作系统自动管理,一般不需要人工干预,但要保证足够的物理内存,让操作系统尽可能多的使用Disk Cache,加快文件读取速度

(4)特殊应用对文件系统Disk Cache要求较高。他们会绕过文件系统Disk Cache,直接访问磁盘分区,自行实现Disk

(5)Cache策略。

Oracle的裸设备(raw device)——直接放弃文件系统

InnoDB for MySQL:innodb_flush_method = O_DIRECT

4.数据库缓存

(1)重要性

数据库通常是企业应用系统的核心部分

数据库中存储的数据量通常非常大

数据库查询操作通常非常频繁,有时也很复杂

以上原因导致数据库查询导致非常频繁的磁盘I/O读操作,迫使CPU挂机等待,数据库性能极低

(2)缓存策略

1)查询缓存

以 SQL 为键值缓存查询结果集

一旦查询涉及的表记录被修改,缓存将被自动删除

设置合适的 Query Cache 将大大提高数据库性能

Query Cache 尽量不要大,Qquery Cache 太大会浪费内存。

MySQL:query_cache_size=128M

2)数据缓冲区

数据缓冲区是数据库数据在内存中的容器

数据缓冲区的命中率直接决定了数据库的性能

数据缓冲区越大越好,越多越好

MySQL InnoDB 缓冲区:innodb_buffer_pool_size = 2G

MySQL 建议将缓冲池扩大到服务器物理内存的 60-80%

5.应用缓存

(1)对象缓存

由Hibernate等O/R Mapping框架提供,透明访问,对数据库查询结果进行细粒度缓存,无需对业务代码进行显式编程,是最省事的缓存策略

当软件结构按照O/R Mapping框架的要求设计时,对象缓存的使用将大大减少Web系统的数据库访问请求

精心设计的数据库结构和对象缓存的使用可以提供极高的性能。对象缓存适用于OLTP(在线事务处理)应用

(2)查询缓存

缓存数据库查询结果集,类似于数据库的Query Cache

适用于一些耗时但时效性不高的要求。查询缓存和对象缓存适用于不同的场景,相辅相成

当查询结果集中涉及的表记录被修改时,需要注意清除缓存

(3)页面缓存功能

页面缓存技术不仅可以减轻数据库服务器的压力,还可以减轻应用服务器的压力

好的页面缓存可以大大提高页面渲染速度

页面缓存的难点在于如何清理过期缓存

6. web服务器端缓存

基于代理服务器模式的Web服务器端缓存,如squid/nginx

Web服务器缓存技术用于实现CDN(内容分发网络)

国内主流门户大量采用

无需编程,但仅限于新闻发布网站,页面实时性要求不高

7.基于ajax的浏览器缓存

使用AJAX调用时,在浏览器端缓存数据库

只要不离开当前页面或不刷新当前页面,就可以直接读取缓存数据

仅适用于使用AJAX技术的页面

文章出自:http://qh.itpxw.cn/peixun/software/2022121468.html

文章标题:Java缓存技术详解



免责声明:本站文章均由入驻起航学习网的会员所发或者网络转载,所述观点仅代表作者本人,不代表起航学习网立场。如有侵权或者其他问题,请联系举报,必删。侵权投诉

你也许会喜欢如下的文章?
(责任编辑:深圳学历教育网)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
培训学校
IT培训网 访问该机构站点 报名留言 加为好友 用户等级:注册会员 用户级别:10 机构名称:IT培训网 联 系 人:罗老师 联系电话:13783581536 联系手机:13783581536 在线客服:起航学习网客服 在 线 QQ:起航学习网客服 电子邮件: 网站域名:http://www.itpxw.cn 注册时间:2016-07-18 11:07 最后登录:2024-02-20 13:02
推荐内容