我正在研究Java中的2级缓存实现以用于学习目的。 我有2个级别:RAM是第一个,FS是第二个。 我为我的实施选择了LRU策略,并在两个级别之间选择了“回写”策略。 你能澄清一下:
如果对象更改其内部状态,是否可以使存储在第二级(文件系统)中的对象保持最新状态?这是2级缓存的常规做法吗?
如果我所知道的关于对象的所有对象都是对象类型,我如何以二进制形式将对象(序列化)写入文件?是否有可能或我必须要求Object应该实现Serializable?
编辑:
实际上关于内部状态的问题是 - 我该如何推动它?
答案 0 :(得分:0)
是的,你可以说你的应用程序中有一个二级缓存是正常做法,至少我可以根据我的经验说出来。有关更多信息,请参阅java规范here。
我们还在应用程序中实现了二级缓存,以提高所有数据库读取操作的性能。为了实现这一点,我们使用了Ehcache API,我们发现在Spring框架上运行时,在应用程序中集成Spring非常容易。