cron 的用处我就不多说了,最近,在做这样的一个事情,索引进行中,要间隔20分钟就会把索引更新一次,即,索引程序会 sleep 20分钟,但要知道 lucene 的 IndexReader 把硬盘的索引缓存到内存,说明了,就算 sleep 过程中什么也没有做,此索引程序还是占用了系统的内存了。而事实上,我们却希望在休眠期间释放其索引占用的内存。当然我们先要分析一下利弊。
利:
1。 索引程序退出了,即调用了System.exit(0);方法,表示整一个程序退出,那当然是其使用的内存全部释放掉。
2。 在现在约200W的数据量来说,虽然不说得上很大,但其也占用了近1G的内存,至少,释放掉这些内存,使linux系统不再管理更多的内存,搜索程序的反应速度也会相应提高。
弊:
1。 索引程序退出了,的确是把内存释放掉,但,索引程序启动时却要把索引重新读入内存,这样在索引程序启动的时候,会消耗提更多的CPU与IO读写等操作。
但,综合来说,还是选用这个方法,利大于弊。
首先,当然是修改索引程序,其实只是把 Thread.sleep改为 System.exit(0);
然后,就是编写一个脚本实时启动它了。
需求:
索引程序每2小时启动一次。就这样写本来应该很容易吧。下图:
但事实上,却事与愿违,这样的脚本反而是每两小时,然后这一个小时的每一个分钟都在执行这一个脚本。同时也可以看到,执行的规律非常明显,每两小时,然后就是再每一分钟都执行一次,执行完一小时后,再停两小时,这样循环下去。。。
知道了问题,就改一下就行了。下图:
表示两小时后的那一个小时的第1秒执行一次这样的脚本就可以了。而不是*号。。。
这样就实现了每两小时执行一次了。
由于本人水平有限,难免有错误,同时欢迎转载,请注明出处:http://kernaling-wong.iteye.com/blog/750256 或联系 kernaling.wong@gmail.com
- 大小: 14.7 KB
- 大小: 14.4 KB
分享到:
相关推荐
Lucene索引器实例Lucene索引器实例Lucene索引器实例Lucene索引器实例
深入 Lucene 索引机制深入 Lucene 索引机制深入 Lucene 索引机制深入 Lucene 索引机制深入 Lucene 索引机制深入 Lucene 索引机制
lucene索引查看工具及源码lucene索引查看工具及源码lucene索引查看工具及源码
lucene 索引 查看 工具
lukeall-0.9.jar为Lucene索引查看工具,方便大家查看索引
一个开源的lucene索引查看程序及代码,
lucene索引结构原理
lukeall,Lucene索引文件查看工具可支持Lucene4.7版本的索引查看,直接双击打开,选择索引目录进行使用
Lucene创建索引,查询索引的简单使用。
这款已经老了,2.4以后的lucene索引用不了。我上传了最新版本的,有需要的话!请到http://download.csdn.net/source/1423241 下。一款可以查看Lucene分词后在索引的排名以及是否有无该词,很多时候用于查看有无需要...
Lucene索引的基本操作,包括添加和更新操作及测试代码;
lucene索引查看工具luck7.4.0 ,解压后,windows平台点击luck.bat即可运行。
该程序代码属于本人2015所写,虽然尚有不足,却实现了对多个文件夹下的数据进行Lucene建立索引和查询功能,并包含了所需的所有jar包,工程直接导入即可运行。
luke源码--查看lucene索引文件
lucene并行索引
java创建Lucene索引
本文档详细介绍了 red hat linux 9 下配置和应用 lucene 2.9.1 适合大家做参考
Lucene索引,知识工程实验报告 Lucene是一个基于java的全文检索工具包,它方便为应用程序添加索引和搜索功能
基于lucene技术的增量索引,实现索引的首次创建,动态增删改
iTextPDFExtractor.java ------ ...--PDFBox创建PDF文件的Lucene索引 PDFBoxPathIndex.java ------- --PDFBox创建指定目录PDF文档索引 POIOfficeExtractor.java ----- -- POI处理Excel和Word文档代码