缓存对系统的重要性

来源:互联网 发布:智能家居和人工智能 编辑:程序博客网 时间:2024/04/28 21:26

昨天晚上服务器访问量较多的情况下,出现了访问拒绝。虽是采用集群方式,但是连接被占满。

猜想应该不是Web服务器这边的问题,到数据库看看,发现CPU和内存运行正常,但是网络却高达20%。

一个百兆网卡,占据20%,意思是每秒有20M的数据在传输,对于我们这样的系统来说,有点不合理。我第一想到的,是不是有大量不必要的查询存在。可是这类问题已经在之前经过了一些优化,即使是这个问题,也不应该如此突出。

 

今天调试代码,发现有些标注了缓存的方法却没有缓存。对比之前的示例(Spring 使用注解配置使用ehcache,http://www.javacui.com/Framework/74.html),查看代码才发现,是因为主配置文件中删除了一行关于ehcache的内容:

 

<ehcache:annotation-driven cache-manager="ehCacheManager" />

 

 

因此造成了缓存不起作用。

 

经过修改后再查看数据库网卡传输,只有1%,因为缓存的作用,加快Web服务器的处理速度,因此系统运行速度明显加快。

因此合理对系统增加缓存是非常必要的,特别是服务和数据库不在同一台服务器情况下。

因为我曾经做过一段时间的网络编程,因此对涉及网络层面的内容特别关心,也极力建议尽量在优化代码之后关注整个系统环境的网络情况。

对于缓存,我也建议大家关注下开源,免费,支持Spring注解的ehcache缓存框架。

 

请您到ITEYE看我的原创

或支持我的个人博客,地址:http://www.javacui.com

 

0 0