首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >推荐用于存储webapp的聊天历史记录的方法

推荐用于存储webapp的聊天历史记录的方法
EN

Stack Overflow用户
提问于 2014-08-12 08:05:37
回答 1查看 926关注 0票数 1

我正在用Java实现一个基于web的聊天客户端,使用Openfire API。

事情的设置和运行顺利,然而,我有点困惑,在哪里存储聊天历史。

据我所观察,基于桌面的客户端通常使用xml、txt等格式在客户端文件系统上存储聊天历史。

在服务器端,我有以下选项:

  1. 使用纯文本文件
  2. 使用json (mongodb、hbase等)
  3. 使用数据库

但我想知道,在速度和性能方面,上述选项中哪一种是最好的(如果你能建议的话,还有其他的)。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-08-12 18:13:38

正如isnot2bad的注释中提到的,您可以通过使用Openfire监视插件添加服务器端消息存档。一旦设置好了,就可以尝试使用XEP-0126通过XMPP获取存档的1到1聊天消息。

Openfire插件

不幸的是,当我试图使用XEP-0136中定义的节从存档中获取消息时,我只遇到了麻烦。如果你环顾支持论坛,你会发现其他人也遇到了这个插件的问题。例如,插件不会按正确的顺序返回会话列表,也不会按开始属性指定的日期过滤会话或消息列表,至少可以说,插件可以使用一些工作。作为一项工作,我已经将插件放在了适当的位置,以便将消息插入数据库,但我已经编写了一个自定义AJAX解决方案,用于检索存档的消息。我只需将它们直接从数据库中取出,并在JSON对象中将它们返回给我的客户端javascript。

XEP-0136将被替换,它总是过于复杂。XEP-0313试图替换它,但我还没有找到任何的实现。祝好运。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25259163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档