2

在看过 Google Wave 演示之后,我想将“实时”功能整合到我的 Web 应用程序中,一个用户将能够看到另一个用户正在输入的文本......

除了基于框架如何处理线程的.NET中内置的软实时功能......

还有什么我需要的吗?是否有任何实时 Web 应用程序的模式或架构参考?我应该读什么?

谢谢!

4

7 回答 7

4

Check out WebSync. It's a .NET comet server that should do exactly what you need.

于 2009-11-20T16:39:01.970 回答
3

您可以尝试在 Silverlight 中使用全双工通道。类似于 Java 小程序的想法,但在 .Net 中除外。

WCF + Silverlight

于 2009-06-02T14:36:31.627 回答
1

如果不使用 Java 小程序或类似程序,您的 HTML/JavaScript 前端将需要轮询服务器以获取相关事件和更改。

在后端,有多种方法可以实现分布式事件队列或类似的方法,以便在服务请求的各个进程之间共享。

于 2009-06-02T14:11:55.173 回答
0

Ajax、SUPXMPP将在这方面为您提供帮助。还要研究 Twitter 搜索和 Friendfeed 的工作原理。

于 2009-06-02T14:39:11.200 回答
0

彗星,虽然并不总是合适的,但在某种意义上它是“轮询”,尽管它只在一项可能长期工作的开始时轮询一次;然后服务器保持 HTTP 连接打开,直到它准备好响应。

正如 Wikipedia 所定义的:“在 Web 开发中,Comet 是一种新词,用于描述一种 Web 应用程序模型,在这种模型中,长期持有的 HTTP 请求允许 Web 服务器将数据推送到浏览器,而无需浏览器显式请求它。”

发现这对于可能需要服务器五分钟才能完成的作业很有用,而不是每 x 秒轮询一次,客户端发出请求,服务器基本上说“挂起......”并完成工作并返回完成时的数据。

有几个库支持这种类型的 Ajax 实现,包括 Dojo (dojo.com) 和 ExtJS 3.0 (extjs.com)。

于 2009-06-02T15:50:37.343 回答
0

我们开发了一个操作转换引擎,这是支持 Google Wave 的技术后端,并使用 Silverlight 上的 DuplexChannel 进行了同步绘图和文本编辑演示。您可以从http://www.corvalius.com/blog/index.php/technology/announcing-the-availability-of-the-beweevee-sdk-september-ctp/下载它。

我们计划为非商业/学术目的完全免费发布 SDK(目前处于预览阶段);因此,您可能会感兴趣。至少您将能够找到一个非常简单的示例,说明如何在源代码中为协作应用程序执行全双工(包括小型 WCF 服务器)。

于 2009-09-30T12:34:09.470 回答
0

由于它是一个网络应用程序,我建议您尝试etherpad

有一个关于 HTTP API 的 .NET Client 示例一个关于其他示例的页面

于 2015-04-13T11:11:03.300 回答