从Win 2012 R2 Hyper-V主机运行Web服务 – xDoS预防

这是场景。

我们有一个Windows Server 2012 R2 Hyper-V版,它们托pipe了三台NLB 2012 R2 Web服务器。 他们从连接的公共服务器接收XML数据并正常工作。

我们有一个Web服务来检查xDoS攻击(这看起来像是一个端点,将逻辑重复的XML消息发送到集群),或者发送错误的端点,然后发送到“失控循环”。每个IIS服务器上的接收器调用web服务,看他们是否应该处理或拒绝给定的信息的消息。不用说,这必须是非常快的,因为这是一个群集,或者必须是:

  • 一个共同的地方,数据存储有关过去收到的消息
  • 一个常用的Web服务,这个数据保存在内存中

第一个选项的合理位置是一个数据库,但是这个选项会使这个过程变慢。 我们每秒获得数千条消息,无法将这些开销添加到每条消息中。

一个普通的Web服务运行的很好,但是当集群中的一台服务器出现故障时,其余服务器之间的编排相当复杂 – 他们需要决定谁将成为主服务器,并且当服务器停机时,它需要重新join其他等…

这是问题…

由于所有的虚拟机都存储在一个通用的Hyper-V主机上,我们可以直接将IIS添加到主机,并在那里运行xDoS检查器Web服务? 该Web服务总是只能从托pipe在其上的IIS服务器(无公共访问)调用。 这意味着没有舞蹈编排,因为只有当所有其他人都下降了。

这是个问题

不好的做法? 如果是这样,为什么? 对我而言,“因为别人不这样做”,或者某种变体不是为什么,顺便说一下,不是一个好的理由。

非常感谢,Rob