如何使网络上的其他机器可以访问 Shuttle-ESB 中的消息队列?
How to make the message queues in Shuttle-ESB accessible from other machines on network?
这些天我正在试验 Shuttle-ESB。到目前为止,我已经能够创建在单台机器上完美运行的组件。但是,每当我尝试在同一网络上的不同机器上移动组件时,它就会停止工作。客户端在 Bus.Create() 上失败。
如何使 Shuttle-ESB 创建 public 队列?
任何使用 Shuttle.Esb.Msmq
的端点都需要收件箱位于本地计算机上。这是因为 Msmq 事务用于通过幕后 journal 队列从队列中获取消息。
无法读取远程私有事务队列:https://msdn.microsoft.com/en-us/library/ms699854%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396
您需要在本地计算机上启用 Msmq。正如我在评论中提到的,public 队列可能会有所帮助,但目前还没有实现,public 队列会带来自己的一系列挑战。
如果在本地端点计算机上安装 Msmq 很麻烦,您可能需要考虑 Shuttle.Esb.RabbitMQ
。 RabbitMQ是一个broker,所以不需要在本地安装;尽管您可能仍想 enable/use 发件箱(可选)。
这些天我正在试验 Shuttle-ESB。到目前为止,我已经能够创建在单台机器上完美运行的组件。但是,每当我尝试在同一网络上的不同机器上移动组件时,它就会停止工作。客户端在 Bus.Create() 上失败。
如何使 Shuttle-ESB 创建 public 队列?
任何使用 Shuttle.Esb.Msmq
的端点都需要收件箱位于本地计算机上。这是因为 Msmq 事务用于通过幕后 journal 队列从队列中获取消息。
无法读取远程私有事务队列:https://msdn.microsoft.com/en-us/library/ms699854%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396
您需要在本地计算机上启用 Msmq。正如我在评论中提到的,public 队列可能会有所帮助,但目前还没有实现,public 队列会带来自己的一系列挑战。
如果在本地端点计算机上安装 Msmq 很麻烦,您可能需要考虑 Shuttle.Esb.RabbitMQ
。 RabbitMQ是一个broker,所以不需要在本地安装;尽管您可能仍想 enable/use 发件箱(可选)。