我有4个应用程序在名为“Infocenter”的数据库上使用相同的数据。 (因此有4个NHibernate实例< =>一个应用程序)
我知道Hibernate使用两个缓存(级别1和级别2)。 我认为缓存可以优化数据库访问的时间。 但是,我使用了4个应用程序,因此有4个缓存。 我不确定,但如果application1更新其缓存,则application2可能会使用旧数据。 所以我想知道我是否必须禁用nhibernate缓存(和其他东西)。
提前致谢。
Bobby Fish
答案 0 :(得分:1)
如果应用1更改当前存储在应用2缓存中的数据,并且您正在使用SysCacheProvider(或任何进程内缓存),则应用2将不会发现数据已更改,您可能会丢失数据或做出错误的决策在您的应用中。
您有多种选择:
我已经在这样的场景中使用了memcached很多年了,并且对它非常满意。