- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我必须开发一个应该在Active / Active群集上运行的.NET Windows Service应用程序。
Windows Service实例(集群节点中的许多实例中的一个实例)应侦听IBM Websphere MQ,并根据每个服务实例上的负载将队列项分配给所有集群节点(包括分发者节点)。当主节点发生故障时,辅助节点上的另一个服务实例应接管分发任务。此外,分发者节点应该能够控制所有节点上Windows Service中TaskScheduler实例的并发级别。为此,我应该能够在群集节点之间进行通信,而无需数据库表或其他队列。
我用谷歌搜索,发现有一个C/C++ Platform SDK可用。但是,是否有任何.NET API可用于检查监听信号并在群集服务器内部的节点之间执行内部通信?或者,如果您可以向我建议实现此目标的最佳方法,则将非常有帮助。谢谢。
最佳答案
为此,可能有比Windows群集更好的平台,但是由于您询问Windows群集,这是我的看法:
除了相当有限的群集数据库(实际上只是复制的注册表项)之外,MSCS / WSFC群集API并没有真正提供进程内通信的机制。但是您可以使用群集API /工具来托管协调程序流程并提供高可用性。
最简单的方法是为您的协调器构建一个普通的Windows服务,然后使用内置的“Generic Service”群集资源/应用程序类型对其进行监视。这样一来,您便可以为协调器分配一个IP地址,该协调器将在群集周围跟随它。请注意,移动协调器服务会造成破坏,因此,如果托管协调器的节点崩溃,则在尚存的节点上启动该节点时将出现停机时间。
我真的没有任何理由使处理代理程序能够感知群集。只需在每个节点上将它们作为服务运行,然后让协调器监视哪些在线。
关于.net - 如何使用.NET在MSCS群集节点之间进行协调/通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6374183/
我是一名优秀的程序员,十分优秀!