我有几个服务器在不同的DMZ中。这些服务器中的每一个都将运行一些NServiceBus服务和/或发送消息的Web应用程序。我需要能够在很多时间内在不同的站点上发送消息。打开所需的端口会带来安全问题,我们的网络管理员不愿意妥协。
我看过NServiceBus网关。 (http://docs.particular.net/nservicebus/gateway/)我认为这将是一个很好的解决方案。但是,我并不完全确定实施它的最佳方法。
考虑由多个服务组成的网络,其中需要跨站点发送多个消息。最好是在同一台服务器上创建一个额外的服务来处理来自该网络的所有消息,或者让每个服务管理它的跨站点发送?
由于
答案 0 :(得分:1)
nservicebus网关是一个可行的解决方案。虽然您必须考虑以下因素:NSB中的所有网关都是可视的。它只允许发送语义。您还需要仔细设计SOA服务边界。跨站点通信应连接在多个站点上物理分离的逻辑服务。通过网关进行的通信应该具有重要的业务重要性,但不是很繁琐(因为跨站点的操作非常昂贵)。
答案 1 :(得分:0)
网关确实要求您打开端口以至少允许传入的http通信。