我将我的 Azure Web 角色项目从 SDK v1.8 更新到 SDK v2.5,并且角色内缓存似乎不再起作用。我看到以下错误
ErrorCode ERRCA0017 :SubStatus ES0006:有一个临时故障。请稍后重试。(指定的一个或多个缓存服务器不可用,可能是由于网络或服务器繁忙。对于本地缓存集群,还要验证以下条件。确保已为此客户端帐户授予安全权限,并检查 AppFabric所有缓存主机上的缓存服务都允许通过防火墙。服务器上的 MaxBufferSize 必须大于或等于客户端发送的序列化对象大小。)。附加信息:客户端试图与服务器通信:net.tcp://10.175.252.32:20004/。---> System.Net.Sockets.SocketException: 无法建立连接,因为目标计算机在 Microsoft.ApplicationServer.Caching.TcpClientChannelFactory 的 Microsoft.ApplicationServer.Caching.AsyncResultNoResult.EndInvoke() 处主动拒绝了它 10.175.252.32:20004。 TcpConnectionCallback(IAsyncResult result) --- 内部异常堆栈跟踪结束 --- 在 Microsoft.ApplicationServer.Caching.DataCache.ThrowException(ErrStatus errStatus, Guid trackingId, Exception responseException, Byte[][] payload, EndpointID destination) 在 Microsoft。 Microsoft.ApplicationServer.Caching.SocketClientProtocol 处的 ApplicationServer.Caching.SocketClientProtocol.ExecuteApi(IVelocityRequestPacket 请求,IMonitoringListener 侦听器)。
这是 app.Config 设置
<dataCacheClients>
<dataCacheClient name="default">
<autoDiscover isEnabled="true" identifier="WorkerRole" />
</dataCacheClient>
</dataCacheClients>
这是我项目中的包
<package id="WindowsAzure.ServiceBus" version="2.5.3.0" targetFramework="net45" />
<package id="WindowsAzure.Storage" version="4.2.1" targetFramework="net45" />
<package id="Microsoft.WindowsAzure.Caching" version="2.5.0.0" targetFramework="net45" />
<package id="Microsoft.WindowsAzure.ConfigurationManager" version="2.0.3" targetFramework="net45" />
<package id="EnterpriseLibrary.TransientFaultHandling.Caching" version="6.0.1304.0" targetFramework="net45" />
即使在模拟器上,我也看到了同样的错误(没有附加信息)。WinDebug 不适用于 Azure 角色(它打开到错误状态)。
任何帮助将不胜感激