Мы переходим от некластеризованной к кластерной среде MSMQ Windows Server 2008 R2 SP1 с 2 узлами. Ранее, когда оно было некластеризованным, мы написали приложение Windows Form для .NET 3.5 C #, чтобы помочь нам управлять нашей средой (поэтому она выполняет такие задачи, как создание очередей с правильными разрешениями, чтение сообщений, пересылка сообщений и т. Д.). Я хотел бы, чтобы это приложение работало с нашим новым кластером.
Согласно этим статьям,
http://blog.terranspot.com/2011/07/accessing-microsoft-message-queuing.html
http://blogs.msdn.com/b/johnbreakwell/archive/2008/02/18/clustering-msmq-applications-rule-1.aspx
Я понимаю, что мне нужно добавить приложение в качестве ресурса в кластере, так как когда я этого не делаю, я получаю доступ к экземпляру MSMQ узла. Чтобы помочь с отладкой, я отключил локальные службы MSMQ. Однако независимо от того, что я делаю, программа продолжает пытаться получить доступ к экземпляру узла. Я добавил его как ресурс приложения (с командной строкой «Q: \ QueueManagerConsole.exe». Q: \ - это диск, который совместно используется двумя узлами, входящими в отказоустойчивый кластер), но при запуске через проводник Windows он не видит экземпляр кластера, только локальный. Я не видел способа выполнить программу из Failover Cluster Manager, поэтому я не понимаю, что я делаю неправильно. Я переключил код для доступа ко всему через "." (так MessageQueue.GetPrivateQueuesByMachine (".")), который, по моему скудному пониманию, заключается в том, как вы получаете доступ к локальной очереди. Может ли кто-то объяснить, предпочтительно, действуя так, как будто я понятия не имею, что я делаю, на a. если это возможно и б. КАК сделать это правильно?