XMPP - Spring Integration:spring 应用程序是不是运行嵌入式 XMPP 服务器

Posted

技术标签:

【中文标题】XMPP - Spring Integration:spring 应用程序是不是运行嵌入式 XMPP 服务器【英文标题】:XMPP - Spring Integration: Does the spring application run an embedded XMPP serverXMPP - Spring Integration:spring 应用程序是否运行嵌入式 XMPP 服务器 【发布时间】:2016-04-14 21:00:37 【问题描述】:

我正在尝试将即时消息集成到我的应用程序中,该应用程序基于通常的 Spring-Maven 堆栈。我遇到的两种可能性是使用原始 Smack (igniterealtime.org) 或为 XMPP 提供 spring-integration 支持(它也基于 Smack)。我的问题是; “是否需要同时运行像 openfire 这样的 XMPP 服务器,或者是否有可能将 XMPP 服务器嵌入到我在 tomcat 上运行的应用程序中运行?”。该场景的有效方案是什么?谢谢

【问题讨论】:

【参考方案1】:

Smack(以及 Spring Integration XMPP)只是该协议的一个 API(客户端),您需要了解和配置的是 XmppConnection 和特别是 host/port 才能连接。

要基于这些组件对应用程序进行正确处理,您无需运行 XMPP 服务器。

例如,我们针对常规 Google Chat 测试了 Spring Integration。

所以,是的:Spring Integration 不运行 Embedded Server,甚至不需要在本地为您运行外部服务器。

【讨论】:

感谢@ArtemBilan 的及时回复。我想在实际实施它之前,我必须阅读更多关于这个主题的内容。是否可以参考一个资源来解释实现自主聊天应用程序(集成为服务器应用程序的一部分)所需的完整架构,而无需使用第三方 XMPP 服务器(例如谷歌)。我仍在努力理解大局,所以如果我的问题没有多大意义,请多多包涵。谢谢 另外,如果根本不需要运行 XMPP 服务器,host/port 指的是什么? 对于 XMPP 适配器,服务器无论如何都必须存在于某处。是的:OpenFire 是私人聊天环境的好服务器。请在igniterealtime.org 上参考他们的文档和论坛。那是完全不同的故事,已经超出了 Spring Integration 的范围。 谢谢@ArtemBilan,这为我解决了一个很大的困惑。我会进一步挖掘它

以上是关于XMPP - Spring Integration:spring 应用程序是不是运行嵌入式 XMPP 服务器的主要内容,如果未能解决你的问题,请参考以下文章

Spring Integration Xmpp 4 - 发送创建 muc 请求

如何使用 Spring Integration 发送 gcm xmpp 消息?

xmpp-connection (spring integration) 的正确参数是啥,以使其与 google gcm 一起使用?

Spring Integration XMPP - 如果 XmppConnectionFactoryBean 的属性 autoStartup 配置为 false,则无法向聊天服务器发送消息

找不到 XMPP Spring 集成属性或字段“json”

spring integration:如何从 Spring Controller 调用 Spring Integration?