FailoverBehaviour - 什么被视为服务器关闭

时间:2017-11-03 11:13:27

标签: c# ravendb

我确实有2个RavenDB个框作为Fail-Over互相复制。

我在IDocumentStore的设置是:

 Conventions =
                {
                    FailoverBehavior =
                           FailoverBehavior.AllowReadsFromSecondariesAndWritesToSecondaries
                }

根据文档 - 当第一个(主)关闭时,RavenDB将故障转移到下一个服务器。

问题是 - 我应该如何理解

  

服务器已关闭

盒子必须关闭,RavenDB服务关闭,还是有其他机制可以检查心跳,响应时间等?

谢谢

此致

1 个答案:

答案 0 :(得分:1)

以下事项将导致客户考虑关闭:

  • 名称解析错误(未找到名称,dns未解析等)
  • TCP连接错误(无法访问服务器,连接被拒绝等)
  • 超时(TCP连接超时)
  • 状态代码为502503504408的HTTP回复。

以下内容不会导致客户端进行故障转移:

  • 任何非502503504408的HTTP错误。
  • 特别会向用户显示500服务器错误或404

404案例非常重要,因为如果您在IIS中删除了一个网站,那么它将返回,而不是预期的503