first-level-cache

    1热度

    1回答

    我们有一个使用NHibernate进行.net模块持久性的brownfield多用户应用程序(99%Delphi,1%.net)。在我的应用程序中,我可以为某个实体添加类别。如果我选择一个并决定不使用它(因此再次删除类别),我已经被NHibernate加载并保留在会话的一级缓存中。现在,如果其他用户删除了这个类别,我尝试保存我的实体,那么我的应用程序会抛出一个异常,因为加载的对象不再存在。 我的问

    1热度

    2回答

    一级缓存与休眠时的查询缓存不同吗?我看过关于第一级和查询缓存的文章,所以我很困惑。

    0热度

    3回答

    下面的方法正常工作在我的服务层: public override IList<City> GetAll() { var query = from item in _tEntities select item; query.Load(); return _tEntities.Local; } ,但是当我尝试运行下面的方法,该方法返

    1热度

    3回答

    在休眠已经有一级缓存可用于缓存,那么为什么我们必须使用二级缓存?为什么我们不能在Hibernate中只使用一级缓存进行缓存,而不是第二级?

    14热度

    1回答

    这个Hibernate配置表面上应该控制在第一级缓存中有多少对象被缓存。原因很容易理解,我们不想耗尽内存。 但有些事情让我感到困惑。我看到的每个实现包括this website 都有明确的清晰和清晰。没问题,但那配置属性有什么意义? 注意:我假设Hibernate监视缓存的大小,并且如果某个类型的对象的数量增长到大于缓存大小,那么将缓存与数据库同步。不知道这个假设是错误的吗?

    4热度

    2回答

    在NHibernate使用Load或Get方法时,您可以轻松受益于第一级缓存。但是ICriteria,HQL,Linq-to-NHibernate和QueryOver呢?他们也使用一级缓存吗?

    3热度

    2回答

    EntityManager为检索到的对象维护第一级缓存,但是如果您想要创建和关闭每个事务的entityManager的线程安全应用程序。 那么,如果这些实体创建并关闭每个事务,那么级别1高速缓存的重点是什么?或者,如果您在单线程中工作,entityManager缓存是否可用?

    0热度

    1回答

    在线程/会话生存期间管理第一级缓存中的持久化实体的正确方法是什么?实际上,每个线程(会话)中只有一个或两个持久实例应始终存在,以便在保存之前从其他(临时)实体引用它们。 因为我需要一段时间来清除会话缓存每一次(否则它被填满和痛苦的缓慢),有什么我不知道是 - 我应该: 逐出会话中的所有实体,除了我需要的东西? 清除整个会话,并重新加载必要的实体? 创建一个新的会话并重新加载必要的实体?

    0热度

    4回答

    我刚刚阅读了我的一个ASP.NET页面的跟踪,并且我注意到每次需要用户时都会从数据库加载页面用户。由于每个ISession都应该缓存对象,所以我对此很困惑。 从逻辑上讲,这个问题肯定是以下两种情况之一: 的ISession的高速缓存未正确 工作的每一个用户请求时,它正在使用不同的装ISession 我假设问题是数字2)。我使用Castle Windsor来管理对象生命周期,所以我发布了一些我正在使