如何在故障转移群集中使用 nServiceBus

发布于 2024-12-15 22:25:41 字数 555 浏览 2 评论 0原文

我们在开发环境中使用 nServiceBus,其中有一个前端将消息发布到服务(订阅者)。生活是美好的。

FrontendWebServer ->中间件服务器

在我们的生产环境中,我们将运行两个前端和两个中间件服务器以进行故障转移。

FrontendWebServer ->负载均衡器(F5) -> MiddlewareServer

FrontendWebServer ->负载均衡器(F5) -> MiddlewareServer

这对于 URL 来说效果很好,但是因为我们需要使用 MSMQ 的机器名称,所以我们陷入了困境。

我们不想在每个前端配置中指定物理中间件机器名称(因为这使得管理配置变得更加困难,并且如果一台中间件服务器出现故障,它也会停止向其特定前端发送消息)。

我们尝试使用 nServiceBus 分发器(安装在每个前端),但似乎订阅者只能收听一个分发器。

有什么想法可以在不使用单独配置的情况下解决这个问题吗?

We're using nServiceBus in our development environment, where we have a frontend publishing messages to a service (subscriber). Life is good.

FrontendWebServer -> MiddlewareServer

In our production environment, we'll be running two frontends and two middleware servers for failover.

FrontendWebServer -> LoadBalancer(F5) -> MiddlewareServer

FrontendWebServer -> LoadBalancer(F5) -> MiddlewareServer

This works well for URLs, but because we need to use machine names for MSMQ we're stuck.

We don't want to specify a physical middleware machine name in each frontend config (because it makes managing configs harder, and if one middleware server goes down, it will also stop messages its particular frontend).

We tried to use the nServiceBus distributor (installed on each frontend), but it seems that a subscriber can only listen to one distributor.

Any ideas how we can get around this problem without using separate configs?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一瞬间的火花 2024-12-22 22:25:42

我会将 F5 推到 Web 服务器前面以平衡负载。对于集群,只需引用集群服务器名称和服务,而不是单个计算机。例如,如果您有 Node1 和 Node2,您可以调用 Cluster NSBNode 或类似名称。

如果将该集群设为分发服务器,则可以在其后面添加多个工作节点以进一步平衡负载。同样,在这种情况下,还要引用集群队列名称(queue@ClusterName)。

I would push the F5 up in front of the web servers to balance that load. For the cluster, just reference the Clustered Server name and services not the individual machines. For example if you have Node1 and Node2 you may call the Cluster NSBNode or something like that.

If you make that cluster the Distributor, you can then add multiple Worker nodes behind it to load balance further. Again in this case also make reference to the Cluster queue names(queue@ClusterName).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文