2012-03-07 177 views
0

在我的下一个计划项目中,我想实现一个在线教室网站,我想在教师和参与的在线学生中分享黑板(说一个简单的文本区域){这些都通过网站登录}。无论Tutor在黑板上写的文字是否被其他参与者实时看到。Comet服务器和XMPP服务器之间的区别

我想用Java作为我的开发平台。

为了实现这一点,我开始使用PUSH技术进行搜索。我读到XMPP实施服务器和XMPP库可用于实现近实时应用程序,如协作应用程序/多方游戏/ IM应用程序等,但我还阅读了关于实时和低等待时间Web应用程序的BlazeDS使用情况。

我的问题是,

  1. 是这些基于XMPP Java实现和BlazeDS之间的差异?技术人员的最终目标不是使用PUSH技术来实现低延时的网络应用吗?

  2. Comet服务器和XMPP服务器有什么区别?他们只是在实施PUSH技术或其他方面有所不同吗?

我很困惑。请有人向我解释一下这些,以便在我做这些事情之前知道我做了什么,以及在我的项目的下一步开始。

感谢

回答

5

要回答你的第一个问题:没有,XMPP的目标不是简单地“使用PUSH技术实现低时延的网络应用程序”。 XMPP远远早于“实时网络”,是一个比基本彗星/推送服务器更广泛的平台。

特点在XMPP这通常不会是纯推送服务器包括:用于非Web客户端(包括现有的桌面客户端)

  • 支持
  • 的认证方法从基于凭证强供您选择机制如SCRAM-SHA-1到临时匿名帐户
  • 支持联盟(与其他XMPP服务器通信)
  • 许多以聊天为中心的功能可用(联系人列表,离线消息传递,文件传输) - 这可以是ab负担或毫无价值,但大部分功能可以在某些XMPP服务器中禁用。

如果你是只是寻找到邮件推送到网站访问者实时的组件,您使用的是Java这与BlazeDS的紧密集成,然后BlazeDS的可能是你最好的选择。

如果您的推送系统是可能涉及多个客户端(包括非web),多种语言,甚至可能包含多个服务器的较大实时平台的一部分(例如,您可以允许用户使用现有的XMPP帐户接收更新),那么XMPP更值得研究。

+0

伟大而清晰的答案。你向我展示了下一步。谢谢 – droidsites 2012-03-07 18:17:41

相关问题