当前位置:  开发笔记 > 编程语言 > 正文

ASP.NET的Comet实现?

如何解决《ASP.NET的Comet实现?》经验,为你挑选了3个好方法。

我一直在寻找在浏览器中实现类似gmail的消息传递的方法,并得出了Comet的概念.但是,我还没有找到一个很好的.NET实现,允许我在IIS中执行此操作(我们的应用程序是用ASP.NET 2.0编写的).

我找到的解决方案(或者可以想到的解决方案)需要为每个用户留下一个正在运行的线程 - 这样一旦收到消息就可以向他返回响应.当然,这根本不可扩展.

所以我的问题是 - 你知道Comet的ASP.NET实现以不同的方式工作吗?这甚至可以用于IIS吗?



1> Scott Hansel..:

由于彗星的持续连接,Comet很难通过IIS进行扩展,但现在有一个团队正在研究Comet场景.另请参阅Aaron Lerch的博客,因为我相信他已经在ASP.NET中完成了一些早期的Comet工作.


这实际上是实现的; 根据Anton的回复,查看WebSync.(http://www.frozenmountain.com/websync/)
MVC异步控制器可以通过卸载等待非IIS工作线程来帮助解决IIS问题,请参阅[Clay Lenhart的精彩帖子](http://clay.lenharts.net/blog/2010/10/19/websockets-is酷毙了,但是,什么灿你-DO-今天).另请参阅BitBucket上的[聊天服务器示例项目](https://bitbucket.org/jacob4u2/mvcchatsite/src).
有人叫反向ajax吗?看看这个:http://pokein.codeplex.com

2> Anton..:

WebSync是符合标准的可扩展Comet服务器,可直接集成到IIS/.NET管道中.它也可以作为托管服务按需提供.

它正式支持每个服务器节点最多20,000个并发客户端连接,但个别测试已经高达50,000.消息吞吐量在1,000-5,000个并发客户端标记周围是最佳的,消息从单个节点传递高达每秒300,000.

它包括对JavaScript,.NET/Mono,iOS,Mac OS X,Java,Silverlight,Windows Phone,Windows运行时和.NET Compact的客户端支持,以及对.NET/Mono和PHP的服务器端支持.

使用SQL Server或开箱即用的Azure缓存支持群集,但可以为几乎任何东西编写自定义提供程序(Redis,NCache).

免责声明:我为开发此产品的公司工作.


这里应该有免责声明,因为它是你的产品......
当然,它是由我工作的公司生产的:)绝对不会试图隐藏任何东西.

3> Jacob..:

我最近根据Clay Lenhart的一篇精彩文章,编写了一个使用MVC 3异步控制器的长轮询聊天服务器的简单示例

您可以在我根据BitBucket项目的源设置的AppHarbor部署中使用该示例.

此外,我的博客文章中提供的更多信息解释了该项目.

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有