在我的应用程序中,我使用的是Spring,Hibernate和EHCache。问题是数据库正在被另一个应用程序修改。
是否有可能,是否有基于某些数据库更改刷新缓存的实施解决方案?我可以使用一些额外的列进行版本控制等。
有什么想法吗?
答案 0 :(得分:0)
您正在寻找的是sizeof(char[10])
缓存。 EhCache支持它。
来自EhCache文档:
直写式缓存是一种缓存模式,用于写入缓存 导致写入底层资源。缓存充当外观 底层资源。有了这种模式,它通常是有道理的 通过缓存读取。后写式缓存使用相同的客户端 API;但是,写入是异步发生的。 Ehcache-2.0介绍 直写和后写缓存。而文件系统或 Web服务客户端可以构成直写缓存的外观, 最常见的底层资源是数据库。
答案 1 :(得分:0)
Ehcache不支持开箱即用的这种情况。直写是指更改以另一种方式流动:应用程序更新缓存,并在后台缓存将更新推送到数据库。
为了将数据库更新推送到您的应用程序,您必须提出自己的解决方案。理想的方法是不要让两个不同的应用程序访问相同的数据,而是使两个应用程序中的一个通过另一个应用程序,以便单个应用程序拥有这组数据。