在AppFabric Cache崩溃后,缓存是否有办法在没有超时的情况下保持运行状态?

时间:2011-01-26 09:14:11

标签: appfabric

首先我的设置用于测试目的:

  • 使用以下配置运行的3台虚拟机:
    • MS Windows 2008 Server Standard Edition
    • AppFabric Cache的最新版本
    • 每个人都有一个存储配置文件的本地网络共享(我已在每个配置中添加了所有计算机)
    • 缓存已分发但高可用性(我们没有Windows的企业版)
    • 每个主机都配置为lead,因此根据文档,至少应允许一个主机崩溃。
    • 每台计算机都安装了我测试的网站,并配置了本地缓存
  • 一台用作代理(使用清漆)的linux机器,用于分发流量以进行测试。

这是设置,现在问题。我正在测试的场景是模拟其中一个服务器崩溃,然后将其恢复到群集中。我在服务器崩溃和重新启动时遇到问题。我用来测试它的步骤:

  • 将Linux机器上的Varnish流量直接导向一台服务器。
  • 登录以确保缓存中有内容。
  • 拔下其他服务器之一的网络电缆(模拟服务器崩溃)

现在我收到缓存超时,我收到服务错误。我希望应用程序仍然在没有崩溃的服务器上运行,并且缓存需要一些时间才能在其余服务器上恢复。那是怎么回事?将网络电缆重新插入并启动主机会导致类似的问题。

所以我的问题是,如果我错过了什么?我希望看到的是,如果一个服务器崩溃,缓存仍然应该重新映射upp,因为大多数潜在客户仍在运行,并且再次启动崩溃的服务器应该优雅地将其恢复到集群中,而不会导致任何问题。其他主持人。但那可能不是它的工作原理吗?

1 个答案:

答案 0 :(得分:1)

几个月前,我遇到了一个类似的测试场景,我有一个测试客户端在一个带有各种Puts,Gets和Removes的3个主机服务器集群上生成负载。在负载测试运行且缓存保持在线状态时,我多次重启其中一台服务器。如果我没记错的话,服务器重新启动时出现的数量有限,但整体缓存看起来仍然很健康。

我不确定为什么你没有看到类似的结果,但我会尝试从你的测试中删除Varnish代理,看看是否有帮助。