我正在一个小型webfarm(5个Web服务器)上设置AppFabric缓存集群。
如果重要的话,缓存群集安装在运行IIS的相同服务器上。
我只对模型层使用AppFabric缓存,这意味着主要是从数据库查询创建的业务逻辑对象。没有页面缓存或类似的。
这在主网站上启用时效果很好。
然而,在5个Web服务器之一上有第二个IIS站点,它承载了几个服务,其中包括3个WCF端点,以及2个老式ASMX Web服务。
当我为此站点启用AppFabric缓存时,它会撕掉整个群集。对Get-CacheClusterHealth的调用显示所有5个已完全消失(100%在未分配的命名高速缓存分数中)
模型代码实际上是我们用于主网站的完全相同的DLL,因此我怀疑代码中的任何内容(因为主站点有效)
我在IIS中发现了这个错误 - > AppFabric仪表板:解析服务文件myendpoint.svc
时发生错误所以这让我想到:这可能是由WCF端点以某种方式引起的吗?
答案 0 :(得分:2)
这里有一个相关问题: - AppFabric Cache server and web application on same physical machine
Microsoft建议不要将缓存节点用于双重用途(也是托管应用程序)。这可能是您的问题的原因。我们使用appfabric缓存集群,但我们将它们专用于appfabric而不是其他任何东西。请参阅MS的文章: - AppFabric Caching Physical Architecture