为什么在会话关闭后将实体保留在内存中被认为是Nhibernate中的坏做法
本文关键字:认为是 Nhibernate 保留 会话 为什么 实体 内存 | 更新日期: 2023-09-27 18:25:10
我有一个网站,可以将数据插入NH实体,
服务器将实体保存在存储器中,在站点上插入/更改数据时,服务器只更新相关信息,在保存时只保存内存中的实体。
这样做是因为实体的复杂性。
我读到在会话关闭后将实体保留在内存中是一种糟糕的做法,我确保没有延迟加载,并且当创建一个新会话来保存实体时,它可以正常工作。
我们不能使用二级缓存,因为我们经常在不保存的情况下更改实体,只有当用户决定要保存时,我们才会保存内存中的实体,或者在需要时回滚更改。
这样使用它会产生什么问题?
一个重要的考虑因素是,对象在内存中保存的时间越长,其他人在数据库中更改它的风险就越大。风险有多大取决于您的用例。