日期:2014-05-20  浏览次数:20706 次

工作查LOG想做个工具自动找但是遇到难题求思路
近来做维护工作,BOSS叫我们查日志然后记录几个地点的相差时间延迟,现在大概框架做出来了但是有个功能卡住了就是我用IO流BufferedReader 的readLine方法去读日志每一行然后放进Map里面 因为有时候我要定位到某一行倒退下几行查找,但是当日志超过50W行的事后Map就爆了引起java.lang.OutOfMemoryError: Java heap space错误 ,请问我想用IO流读文本然后定位到某一行 再倒退查找除了用Map(ID,行的内容);这样记录还有什么好的办法吗?求教了,要不天天对这鬼东西想吐了

------解决方案--------------------
只是往回到某一行,何必把所有的数据都放到内存中呢?保留最近的比如1000行就可以了啊。