【问题标题】:AppFabric Caching: ErrorCode<ERRCA0017>:SubStatus<ES0001>:There is a temporary failure. Please retry laterAppFabric 缓存:ErrorCode<ERRCA0017>:SubStatus<ES0001>:暂时失败。请稍后重试
【发布时间】:2011-08-11 10:28:07
【问题描述】:

我们有一个使用 SQL 配置提供程序运行的 3 机器缓存集群。该服务在缓存主机上的域帐户下运行(我们没有使用安全性)。 SQL 服务器也在域用户帐户下运行。我们在网络服务下运行缓存服务时遇到问题,根本无法连接到 SQL。但是这种配置可以让集群顺利启动并运行。

有两种类型的缓存客户端。其中一个缓存客户端是在运行缓存服务的同一域帐户下运行的本机 c++ exe。这些缓存客户端位于不同的机器上。所有此类客户端都可以成功连接到缓存主机。

第二种类型的缓存客户端是在网络服务下运行的 .NET Web 应用程序。此客户端无法将任何内容写入/获取到缓存主机。它能够成功初始化缓存工厂,但失败:

`Creating Region for general use in default cache

Error in Cache Call : ErrorCode<ERRCA0017>:SubStatus<ES0001>:There is a temporary     failure. Please retry later. : http://go.microsoft.com/fwlink/?LinkId=164049
at Microsoft.ApplicationServer.Caching.DataCache.ThrowException(ResponseBody respBody)
at Microsoft.ApplicationServer.Caching.DataCache.CreateRegion(String region)
at CacheAPISample.Program.CreateRegion(String myRegion)
at CacheAPISample.Program.RunSampleTest()
at CacheAPISample.Program.Main(String[] args)`

从错误描述中看不出这是什么类型的错误。我已确保 domain\clientmachinename$ 是允许的缓存客户端。安全和保护已关闭。启用防火墙规则(假设客户端类型 1 可以成功调用,则排除防火墙问题)。

到目前为止我已经尝试过:

  1. 使用来自客户端类型 2 的域用户运行示例测试。同时确保域用户是允许的缓存客户端。

  2. 主机映射缓存服务器。

我应该怎么做才能找到错误的实际根本原因?缓存主机上的日志是干净的。没有错误。

【问题讨论】:

  • 查看我对这个相关问题的回答:stackoverflow.com/questions/6859523/…
  • No Frode,我没有并发 Get 请求问题。相同的示例测试从客户端类型 1 运行。我有另一个堆栈模仿此设置,并且一切正常。我遇到了一些奇怪的 Windows 安全问题,我不是这方面的专家。
  • 稍后重试适用于获取和更新设置。另请注意,安全性很重要。您的客户是如何设置的?
  • 安全和保护已关闭。安全策略反映了适当的 ACL 从客户端打开到 22233 端口的缓存主机。客户端也可以在 1433 端口访问 SQL 集群,尽管我不确定缓存客户端是否直接与 SQL 对话以读取任何配置数据。您还需要什么信息?

标签: caching appfabric


【解决方案1】:

作为后续,我相信这部分解决了确保客户端系统可以通过机器名称(使用 etc/hosts hack)而不是 FQDN 解析 AppFabric 服务器。这似乎是一个已知问题。不幸的是,对于这个和其他真正的失败,错误消息是相同的。

【讨论】:

  • 是的,感谢您使用分辨率更新线程。按机器名映射缓存主机对我们有用。是的,错误应该更具描述性,而不是引发的一般错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-08
  • 1970-01-01
  • 2019-09-09
  • 1970-01-01
相关资源
最近更新 更多