我们有一个 Web 应用程序,我们注意到以下错误有很多问题:
NHibernate.Cache.ReadWriteCache - An item was expired by the cache while it was locked (increase your cache timeout)
这些行后面是应该持久化到 DB 的随机实体。有时,这些似乎无法持久,或者缺少某些应该设置的字段,让我们非常头疼。
最奇怪的是,如果关闭二级缓存,我们仍然会看到这一点,这让我感到惊讶。运行它的服务器有 64 GB RAM,使用量通常在 55-60 GB 左右,因为它托管多个站点。
当二级缓存应该关闭时,为什么我会看到这个?一级缓存不应该像这样过期,对吧?我还尝试将某些实体的 CachePriority 设置为永不过期,但它们仍然显示在日志中。
我究竟做错了什么?我被误导了吗?