NHibernate 二级缓存 - Membase MemCache - 多个会话工厂
我在多租户 NHibernate 应用程序中使用多个数据库,之前我使用 SysCache,效果很好,但是我需要迁移到 Memcache,因为我们现在使用 Web Farm。我实际上使用的是 Membase 服务器,它非常容易在 Windows 上安装并支持 Memcache。
看起来好像我的缓存在会话工厂之间共享...如果一个实体从 ID 为 1 的数据库 A 中获取缓存,并且应用程序 B 请求相同的实体,它应该从自己的数据库中获取它,而不是从数据库返回该实体缓存中的 A。
我需要执行任何其他配置才能使其正常工作吗?
我使用这里的 MembaseCacheProvider (也配置相同) http://blog.ovesens.net/2011/02/nhibernate- membase-caching-provider/
我在上面的博客上留下了评论,但是我也在这里发帖,以防有人可以同时提供帮助。
保罗
I am using multiple databases in a multi-tenant NHibernate application, I was previously using SysCache which worked fine, however I needed to move to Memcache as we are now using a Web Farm. I am actually using Membase server which was very easy to install on windows and supports Memcache.
It appears as if my cache is being shared between session factories...if an entity gets cahced from database A with ID of 1 and application B requests same entity, it should get it from its own database but instead its returning the entity from database A in the cache.
Is there any additional configuration I need to perform to get this to work?
I am using a MembaseCacheProvider from here (and confugured the same too)
http://blog.ovesens.net/2011/02/nhibernate-membase-caching-provider/
I have left a comment on the above blog, however I am posting here too in case anyone can help in the meantime.
Paul
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
对于不同的应用,最好使用不同的桶。有关更多说明,请参阅 Couchbase 服务器数据存储桶。
You'd better to use different buckets for different applications. See Couchbase Server Data Buckets for more explanations.