我在独立的 JBoss AS7 中创建了一个 REST API,使用 hibernate 作为 JPA 提供程序,使用 Infinispan 作为二级缓存。
我在https://docs.jboss.org/author/display/ISPN/Write-Through+And+Write-Behind+Caching中看到 Infinispan 可以使用 write-behind 方法,将数据从缓存异步保存到db,这是我的项目需要的东西。
我想启用此功能,但我无法在任何地方找到如何做到这一点。
如果有帮助,我可以解释为什么我需要这种行为。我有一个名为 Stat 的实体类。在那个类中,我有一个 int balance 值,例如:
@Entity
public class Stat{
private int balance;
}
REST 方法之一同时访问该余额,从中减去一个并在数据库中更新它。这在项目中造成了瓶颈,因为许多线程试图获取锁来读取和更新数据库的余额。
所以,我认为我可以使用 Infinispan 来更新内存中的余额,并让 Infinispan 异步持久化对数据库的更改。
任何帮助将不胜感激。