加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 从单个Web服务器迁移到多个Web服务器负载平衡环

发布时间:2020-12-16 04:26:52 所属栏目:asp.Net 来源:网络整理
导读:我之前的设置是单个Web服务器和单个数据库服务器.我正在使用nhibernate二级缓存来缓存内容,以避免大量调用进入数据库.这很有用,因为我正在使用这个组件 nhibernate.caches.syscache 并添加此代码以打开二级缓存(使用常规syscache提供程序): return configur
我之前的设置是单个Web服务器和单个数据库服务器.我正在使用nhibernate二级缓存来缓存内容,以避免大量调用进入数据库.这很有用,因为我正在使用这个组件
nhibernate.caches.syscache

并添加此代码以打开二级缓存(使用常规syscache提供程序):

return configuration
            .Mappings(m => m.FluentMappings.AddFromAssemblyOf<ApplicationMap>().Conventions.Add(typeof(Conventions)))
            .ExposeConfiguration(
                c => {
                    c.SetProperty("proxyfactory.factory_class",proxyFactory);
                    c.SetProperty("cache.provider_class","NHibernate.Caches.SysCache.SysCacheProvider,NHibernate.Caches.SysCache");
                    c.SetProperty("cache.use_second_level_cache","true");
                    c.SetProperty("cache.use_query_cache","true");
                    c.SetProperty("expiration","86400");
                })
            .BuildSessionFactory();

我现在已迁移到具有多个Web服务器的新环境,我正在尝试了解其含义(我仍然有一个数据库服务器).

由于缓存之前存储在Web服务器上,现在看起来我在每个Web服务器上都有2个并行缓存,它们本身可能不同步并且可能导致过时更新等.

获得之前缓存的好处的最佳解决方案是什么,还可以利用此新设置提供的Web服务器负载平衡的弹性?

解决方法

Ayende blogged关于NHibernate中的二级缓存使用情况.您将需要在Web场方案中使用分布式缓存.例如,SysCache2(它依赖于ASP.NET缓存,可以配置为使用分布式提供程序)或MemCache.这是 an article,说明了如何配置memcached.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读