为了这个例子,想象一下一个像股票代码这样的应用程序。WCF 在收集刻度方面有一个明显的应用,可能会将它们发送到数据库中,但是在内部呢?
您会/可以使用 WCF 来定义和协调同一应用程序的模块之间的通信吗?我们的股票代码有小部件,一个显示最后价格,一个显示随着价格变化而更新的图表,一个显示最后两个价格之间的差异。
所有这些都可以通过 WCF 在同一流程中进行协调吗?你会吗?
为了这个例子,想象一下一个像股票代码这样的应用程序。WCF 在收集刻度方面有一个明显的应用,可能会将它们发送到数据库中,但是在内部呢?
您会/可以使用 WCF 来定义和协调同一应用程序的模块之间的通信吗?我们的股票代码有小部件,一个显示最后价格,一个显示随着价格变化而更新的图表,一个显示最后两个价格之间的差异。
所有这些都可以通过 WCF 在同一流程中进行协调吗?你会吗?
它们都可以通过 WCF 通信进行协调,但是,我不确定这是否是一个好主意。在您给出的示例中,我认为性能(就延迟而言)是关键。换句话说,如果您的股票行情正被竞争首先查看股票结果的股票经纪人使用,那么与 .NET 事件之类的事件相比,WCF 通信可能会松动。
据我了解,这主要是因为 WCF 被设计为一种跨进程通信机制。为了实现这一点,它序列化所有对象,然后将数据编组到另一个进程,即使它是同一个进程。我不知道配置 WCF 的方法,因此它知道您正在与同一进程交谈。
如果您在同一个 .NET 进程中,则所有公共方法都可以直接调用。因此,与使用 WCF 相比,直接使用对象的开销要少得多。