现在本人手上有一个小项目,程序会不间断的向ehcache写入数据,同时会不间断的读取ehcache中保存的数据。在绝大部分情况下对数据的读取会很快,但是偶尔的时候读取速度会变慢。
比如同样是一次性读取100个数据,快的时候只需要1秒,慢的时候需要十几秒。
请问,这个是什么原因造成的?
求大神帮忙解答一下。
使用ehcache,缓存大小小于实际保存对象大小,进行大量对象会写入磁盘,但是由于多线程同时处理调用getkeys,会阻塞。
解决办法:在存在大量对象放入磁盘时,禁止使用getKeys方法。