全国热线

025-86901720

全国监督投诉热线:9:00-23:00

关于Java操作系统、数据库缓存的分类介绍

要想处理好缓存,首先要了解缓存是什么,今天学码思Java培训老师带来关于Java操作系统、数据库缓存的分类介绍,一起来看一下。

  缓存处理是Java中的重要技术分之,适当处理好缓存可以提升整体性能和速度,但是缓存太多也会占用过多空间,要想处理好缓存,首先要了解缓存是什么,今天学码思Java培训老师带来关于Java操作系统、数据库缓存的分类介绍,一起来看一下。


  数据库缓存


  1、重要性


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


  数据库保存的数据量通常非常庞大


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


  以上原因造成数据库查询会引起非常频繁的磁盘I/O读取操作,迫使CPU挂起等待,数据库性能极度低下


  2、缓存策略


  a、Query Cache


  以SQL作为key值缓存查询结果集


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


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


  Query Cache并非越大越好,过大的Qquery Cache会浪费内存.


  MySQL: query_cache_size= 128M


  b、Data Buffer


  data buffer是数据库数据在内存中的容器


  data buffer的命中率直接决定了数据库的性能


  data buffer越大越好,多多益善


  MySQL的InnoDB buffer:innodb_buffer_pool_size = 2G


  MySQL建议buffer pool开大到服务器物理内存60-80%


  >>>Java开发中优化SQL语句方法


  操作系统缓存


  1、文件系统提供的Disk Cache:操作系统会把经常访问到的文件内容放入到内存当中,由文件系统来管理


  2、当应用程序通过文件系统访问磁盘文件的时候,操作系统从Disk Cache当中读取文件内容,加速了文件读取速度


  3、Disk Cache由操作系统来自动管理,一般不用人工干预,但应当保证物理内存充足,以便于操作系统可以使用尽量多的内存充当Disk Cache,加速文件读取速度


  4、特殊的应用程序对文件系统Disk Cache有很高的要求,会绕开文件系统Disk Cache,直接访问磁盘分区,自己实现Disk


  5、Cache策略


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


  MySQL的InnoDB: innodb_flush_method = O_DIRECT


  关于Java操作系统、数据库缓存的分类介绍就位大家介绍到这里,在实际的Java应用开发过程中,缓存部分的封装难度要比其他的大很多,关于缓存,我们的学码思Java培训课程中会专门开一个章节来讲,具体操作和应对要根据实际项目大小和应用需求来决定。

上一篇:十个Java面向对象设计原则讲解
下一篇:分享通用的Java和Android开发库

相关推荐

免费试听 | 学费咨询 | 在线报名 | 申请补贴 | 软件培训 | 网站地图

2016-2020 南京学码思教育科技有限公司 .All Rights Reserved

苏ICP备16033487号 www.njxms.com.cn

全国热线

400-080-3312

全国监督服务热线:9:00-23:00