博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

MANIAC

逝去的时光,奔腾的流水,放浪的生涯,燃烧的梦想,繁繁茫茫的人海,漂泊流浪的我...
  maniac.cublog.cn

关于作者
小时候一直以为我跟别人不一样,原来长大以后,每个人都一样.要么忙着活,要么忙着死,只有这两种选择.

QQ    396002399
MSN   00ahui@gmail.com
EMAIL 00ahui@gmail.com
|| << >> ||
我的分类


缓存机制的使用
缓存机制在很多地方都接触的到,最经典的是CPU的高速缓存和OS分页内存管理中的多级页表,使用缓存机制的目的是加快处理速度,减少资源的频繁访问。在做网页排重程序的过程中,需要保存大量的词语和其特征向量的对应关系,最开始我使用HashMap(程序采用Java开发)将其保存在内存中,由于随着程序不断的运行会有新的词语加进来,而我们需要处理数据量又比较大,程序运行一段时间就会内存溢出,给jvm分配最大内存(1.5G)仍然会发生内存溢出,无奈只能将这些对应关系保存到数据库中,可是新的问题有出现了,每个网页的正文在分词后会得到数百甚至数千个词语,每个词语都要经过一次查询操作,如果数据库中不存在这个词语还要进行一次插入操作,所以程序的速度非常的慢,算了一下时间跑完程序需要五天,这个速度让谁都无法忍受。不知道哪来的灵感让我一下子就想起了缓存机制,我给词语特征向量表设置了一个缓存,程序开始从数据库中加载些数据到这个缓存里,随着程序运行不断更新缓存,最后缓存里是最常用的词语,这样程序速度大大提高,网页特征向量计算那部分在很短的时间内就完成了.

发表于: 2007-12-16,修改于: 2007-12-16 13:55,已浏览306次,有评论0条 推荐 投诉


网友评论
 发表评论