我需要在 VMWare ESX5 上设置弹性 MSMQ。我知道我们不能允许队列存储共享,因为它必须安装在物理磁盘上,例如它不能是 CIFS 或 DFS 共享。适用以下限制:我们不使用 Windows 集群我们不依赖热备用
有没有办法将队列存储复制到另一个平台,以便它可以在主平台出现故障时使用任何方法(包括队列转发)承担 MSMQ 职责?
答案1
我听说过有人使用块级复制将 MSMQ 存储文件夹所在的磁盘复制到另一个位置。
如果您确实将存储复制到另一个位置,则目标计算机必须具有相同的计算机名称才能加载消息。
请注意,MSMQ 可能需要更新多个文件以进行消息处理,因此当发生故障时,副本与原始副本不完全同步的情况总是存在的。
如果您不想投资硬件解决方案,那么您可以将应用程序设计为具有弹性。例如,通过将消息发送到多个目的地但只处理一条消息或拦截对重复消息的处理。