【问题标题】:Web Chat Application - ASP.NET/Jabber/Ajax/WCF/Comet/ReverseAjax - Issues Faced - Seeking Insights网络聊天应用程序 - ASP.NET/Jabber/Ajax/WCF/Comet/ReverseAjax - 面临的问题 - 寻求见解
【发布时间】:2011-03-14 16:35:17
【问题描述】:

在过去的三周里,我一直在尝试构建一个基于 Web 的聊天应用程序,但无论我采用哪种方式(编程技术/技术)来构建它,我都面临着问题。我已经解释了我在下面遇到的所有问题。请提供您对此的任何见解。

ASP.NET-AJAX

  1. 第一个问题是它不是真正的实时
  2. 如果客户端每 x 秒访问一次聊天服务器(恒定时间戳),除非 x 非常非常少,否则它不会是实时的
  3. 如果 x 非常小(例如 1 秒)并且同时有 1000 个用户在线,我认为这确实会影响聊天服务器并导致可扩展性/性能问题

WCF-双工

不幸的是,我在尝试构建 WCF 双工服务时浪费了大量时间,该服务维护所有客户端并在需要时通过通道调用客户端。但我最近learnt 认为 WCF 双工回调不适用于 ASP.NET(因为 http 是请求和响应类型)。我在关注this great article 构建双工服务。

Comet/ReverseAjax/HTTP 服务器推送

我对这种技术非常陌生,想知道它的扩展能力有多好。在我第一次看到in wiki 的这种编程技术和 Alex here 的第一篇关于 Comet 的文章之后,我了解到客户端始终保持与服务器的开放连接(长期存在的 ajax 调用),可以由服务器将“服务器中发生的有趣事件”推送到浏览器(客户端)。那么它可以扩展多少呢?如果 IIS 中的最大打开连接数超过或出现任何其他类似问题怎么办?

Jabber 服务器/客户端 (XMPP)

我发现大多数可以在网上看到的著名聊天应用程序都在使用 Jabber。我还了解到,从头开始编写 Jabber 服务器是一项乏味的任务。我按应用程序有单独的用户配置文件存储。我可以轻松地将它与 Jabber 集成吗?我可以私人托管的任何开源 Jabber 服务器? (我见过很多开源工具可以轻松构建客户端)

非常感谢您提供的任何见解。

谢谢

NLV

【问题讨论】:

标签: c# asp.net wcf chat comet


【解决方案1】:

如果您使用的是 .NET,请查看 WebSync。它允许完全可扩展的彗星使用 IIS 直接与您的应用程序集成。您可以试用免费的社区版,以及大量示例和聊天演示。

我最近使用 WebSyncjabber-net 实现了一个多客户端 Jabber 网络应用程序。

【讨论】:

  • 你有没有在asp.net网站上集成jabber聊天的示例代码,请你发布..示例代码吗?
【解决方案2】:

PokeIn 提供客户端之间的共享对象,它可以帮助您创建令人印象深刻的可靠和快速的 Web 应用程序。即使您的应用程序托管在多台服务器上,PokeIn 也会管理所有服务器上的共享对象。因此,此功能将帮助您创建非常有效的解决方案。除了这些,你还会在there上找到非常有用的示例

【讨论】:

    【解决方案3】:

    我知道这是旧的,但如果 somone new 发现这个你应该考虑使用SignalR

    【讨论】:

      【解决方案4】:

      开源 Jabber 服务器

      你签出OpenFire

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-01-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-29
        • 2020-08-09
        • 2019-01-05
        • 1970-01-01
        相关资源
        最近更新 更多