我收到错误“ErrorCode:SubStatus:客户端配置文件中出错。”使用app fabric时。
当我尝试创建对象时,它会中断并抛出上述错误。 DataCacheFactory dcf = new DataCacheFactory();
配置文件如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!--configSections must be the FIRST element -->
<configSections>
<!-- required to read the <dataCacheClient> element -->
<section name="dataCacheClient"
type="Microsoft.Data.Caching.DataCacheClientSection,
CacheBaseLibrary"
allowLocation="true"
allowDefinition="Everywhere"/>
<!-- required to read the <fabric> element, when present -->
<section name="fabric"
type="System.Data.Fabric.Common.ConfigFile,
FabricCommon"
allowLocation="true"
allowDefinition="Everywhere"/>
</configSections>
<!-- routing client -->
<dataCacheClient deployment="routing">
<hosts>
<host
name="servername"
cachePort="22233"
cacheHostName="DistributedCacheService"/>
</hosts>
</dataCacheClient>
<system.web>
<sessionState mode="Custom" customProvider="Velocity">
<providers>
<!-- specify the named cache for session data -->
<add
name="Velocity"
type="Microsoft.Data.Caching.SessionStoreProvider"
/>
</providers>
</sessionState>
</system.web>
</configuration>
编辑:如果我使用代码连接到AppFabric,则会出现另一个错误 “ErrorCode:SubStatus:存在临时故障。请稍后重试。(一个或多个指定的缓存服务器不可用,这可能是由繁忙的网络或服务器引起的。请确保已为群集上的此客户端帐户授予安全权限,允许AppFabric缓存服务通过所有缓存主机上的防火墙。稍后重试。)“
代码:
DataCacheServerEndpoint[] servers = new DataCacheServerEndpoint[1];
servers[0] = new DataCacheServerEndpoint("servername", 22233);
// Setup the DataCacheFactory configuration.
DataCacheFactoryConfiguration factoryConfig = new DataCacheFactoryConfiguration();
factoryConfig.Servers = servers;
// Create a configured DataCacheFactory object.
DataCacheFactory mycacheFactory = new DataCacheFactory(factoryConfig);
答案 0 :(得分:0)
您可能需要授予AppPool对缓存服务器的身份访问权限。需要授予此帐户访问AppFabric缓存的权限,以便客户端在ASP.NET中工作。当您使用ASP.NET模拟时,这也适用,缓存客户端仍将使用AppPool的标识来验证缓存客户端,而不是模拟帐户。
答案 1 :(得分:0)
如果您不使用路由deployment="routing"
,请将其删除。
答案 2 :(得分:0)
您是否打开了群集服务?
之前我遇到过此消息,然后通过发出启动缓存集群 在Appfabric的PowerShell中启动CacheCluster。
然后,确保它已打开(您可以在端口22233(缓存端口的默认端口)上telnet到您的“servername”并确保它已连接(包括在防火墙例外中)。
希望它对你的问题有帮助并且仍然有效:)