【发布时间】:2015-12-15 05:37:15
【问题描述】:
简化...我们正在使用 NServiceBus 来更新我们的存储。
在我们的 sagas 中,我们首先从存储中读取数据并更新数据并将其再次放回存储中。NServicebus 实例自托管在 Windows 服务中。对存储的调用在其自己的程序集(“assembly1”)中分开。
现在我们还需要通过 WCF 从存储中同步读取。在某些情况下,在 sagas 中更新时需要相同的读取。
我的意见很清楚,但也许我错了,所以我问这个问题......
我们是否应该设置一个使用“assembly1”副本的单独 WCF 服务? 或者,WCF 实例是否应该托管 nservicebus? 或者,还有更好的方法吗?
它在某种程度上是两个端点,用于同步调用的 WCF 和现在托管 nservicebus(已经存在)的 Windows 服务。
【问题讨论】:
-
在某些情况下,在 sagas 中更新时需要进行相同的读取 - 你的意思是 sagas 将调用 WCF 服务吗?
-
这是一种方法,但今天没有 WCF 服务(但...待定)。 sagas 直接通过“assembly1”调用存储。事情是以相反的顺序完成的。没有完整的架构,现在我们需要把它改正。
-
那么您的问题是,您的 WCF 服务是出于架构原因还是出于功能原因(即您需要将端点公开为 WCF 服务)而独立于您的 NSB 端点?抱歉,我不明白您最终要达到的目标。 WCF 服务将被 NSB 使用,还是您只是通过 WCF 提供另一条进入数据库的路由并且担心争用等?
-
好的。我应该让我们的 WCF 服务独立于现有的 NSB 端点吗? NSB 不会使用 WCF 服务。不过,也许这正是我们应该做的……我只想将 WCF 用于读取。但是我们也有需要进行更新的场景,即从我们的最终用户应用程序向 NSB 发送(命令)消息。
标签: wcf architecture nservicebus nservicebus5