【问题标题】:How to Generate a Constant Flow of Messages in WCF如何在 WCF 中生成恒定的消息流
【发布时间】:2011-08-26 20:51:02
【问题描述】:

我正在创建一个 StreamInsight 项目,旨在使用来自远程计算机上另一个 .NET 应用程序的消息。

我已经完成了一个强大的概念验证 CEP 项目,它使用 http://stream.twitter.com/1/statuses/sample.json 的 Twitter 示例提要,很好地解析它并且通常可以正常工作。

它使用这样的代码访问消息提要

Dim response = request.GetResponse()

Using streamReader = New StreamReader(response.GetResponseStream())

我的问题是我不确定使用什么技术在另一台可以通过 HTTP 连接发送消息的机器上创建 .NET 应用程序。我以前使用过 WCF WebServices,但它们总是对单个请求返回一个答案,而不是对一个请求返回多个响应。

谁能帮我推动我可以用来生成这些消息的 MS 技术?

【问题讨论】:

  • MSMQ 上的 WCF。非常容易使用,但不确定它是否会轻松跨越网络(互联网)。
  • 我没有代表发表评论,所以我必须发布。您是否研究过分块 (msdn.microsoft.com/en-us/library/aa717050.aspx)?

标签: .net wcf visual-studio-2010 .net-4.0


【解决方案1】:

HTTP 请求响应的工作原理是一请求 = 一响应。

分块是 HTTP 技术,它允许以多个块发送 HTTP 响应,但它仍然是具有所有局限性的单一响应。 WCF 分块通道不是 HTTP 分块的实现。它是 SOAP 消息的分块,它要求两端具有相同的分块通道。

如果您想通过 HTTP 使用多个响应,您必须在客户端上公开单独的服务,服务器将调用此服务以提供具有与原始请求相关的 id 的多个响应。

HTTP 不是用于连续数据流的协议。如果您想要连续的数据流,请直接通过 TCP 使用套接字。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-16
    • 2011-04-12
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 2016-11-25
    • 1970-01-01
    相关资源
    最近更新 更多