我应该为任何聊天应用考虑XMPP吗

拉维·库玛(Ravi Kumar)

对于具有支持基于服务器的扩展功能(与聊天无关但实时数据)的聊天应用程序,我是否真的需要集成或考虑对于简单的文件共享(S3存储),聊天和其他数据通信(服务器状态等),XMPP并不是多余的。WebsocketSocketIOXMPP

在我的应用程序中,自定义数据是从不同的存储中获取的,Message Queue在某些情况下需要推送到该存储中,并将上载的文件存储在S3中。所有这些都不支持XMPP,因此,如果我选择XMPP服务器作为后端,无论如何我将不得不大量定制XMPP服务器实现。

您认为我最好完全自己跳过XMPP来实现所有这些。或者,XMPP中是否有任何我可能没有考虑的东西。

应用程式所需的支援:

  1. Websocket
  2. 长轮询ajax
  3. S3存储
  4. Redis / Aerospike数据库
  5. REST调用不同机器上托管的其他服务
  6. Android客户端
  7. iOS客户端
  8. 基于Qt的Windows客户端
彼得·科里斯(Peter Corless)

XMPP,以前是Jabber,是基于XML的。我是使用XML的老手,但即使我也可以看到它在创建打开和关闭元素标签时是闲聊和多余的,并且还需要大量的打开和关闭引号。

如今,尤其是在NoSQL领域中,如今似乎更流行的是语法上更简明的数据编码,例如JSON或BSON(二进制JSON)。

JSON:http//www.json.org/二进制JSON:http//bsonspec.org/

XML的架构,语法,解析或基于Web的形式化中是否有某些特定内容,这是您要使用XMPP的原因?否则,您可能会发现JSON是一种更轻松,更有效的数据编码方式。

还请让我知道此答案是否有用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我应该为 iOS 应用创建 Firestore 索引吗

来自分类Dev

我应该为Android清理输入吗

来自分类Dev

我应该为此使用缓存吗?

来自分类Dev

我应该为Android清理输入吗

来自分类Dev

我应该为我的GUI应用程序使用“一路异步”吗?

来自分类Dev

我应该为我的应用程序使用ThreadPool还是IntentService吗?

来自分类Dev

我应该为我的Web应用程序使用单独的Docker容器吗?

来自分类Dev

我应该为我的应用程序使用ThreadPool还是IntentService吗?

来自分类Dev

我应该为Symfony2应用程序的每次部署使用不同的机密吗?

来自分类Dev

我应该为新的ios应用程序使用“苹果开发”或“ ios发行”证书吗?

来自分类Dev

我应该为Symfony2应用程序的每次部署使用不同的机密吗?

来自分类Dev

我应该为我的角度指令命名空间吗?

来自分类Dev

我应该为我的TenantId列编制索引吗?

来自分类Dev

我应该为我的 TypeScript 模块编写 TypeScript 定义吗?

来自分类Dev

我应该考虑将SpriteKit用于非游戏iOS应用程序吗?

来自分类Dev

iOS RSS Feed应用程序:我应该为每个视图控制器创建一个类吗?

来自分类Dev

iOS RSS Feed应用程序:我应该为每个视图控制器创建一个类吗?

来自分类Dev

我应该为不同的设备制作单独的“响应脚本”吗?

来自分类Dev

我应该为所有程序集强力命名吗?

来自分类Dev

我应该为Android位图释放内存吗?

来自分类Dev

我应该为root帐户启用rsync吗?

来自分类Dev

我应该为此使用Xpath或regexp吗?

来自分类Dev

我应该为测试编写测试吗?

来自分类Dev

我应该为这个警告消息担心吗?

来自分类Dev

我应该为Kubernetes禁用TCP时间戳吗?

来自分类Dev

我应该为新项目使用“请求”模块吗?

来自分类Dev

我应该为所有API添加ETag吗

来自分类Dev

我应该为每个属性使用单独的useState吗

来自分类Dev

我应该为root帐户启用rsync吗?

Related 相关文章

  1. 1

    我应该为 iOS 应用创建 Firestore 索引吗

  2. 2

    我应该为Android清理输入吗

  3. 3

    我应该为此使用缓存吗?

  4. 4

    我应该为Android清理输入吗

  5. 5

    我应该为我的GUI应用程序使用“一路异步”吗?

  6. 6

    我应该为我的应用程序使用ThreadPool还是IntentService吗?

  7. 7

    我应该为我的Web应用程序使用单独的Docker容器吗?

  8. 8

    我应该为我的应用程序使用ThreadPool还是IntentService吗?

  9. 9

    我应该为Symfony2应用程序的每次部署使用不同的机密吗?

  10. 10

    我应该为新的ios应用程序使用“苹果开发”或“ ios发行”证书吗?

  11. 11

    我应该为Symfony2应用程序的每次部署使用不同的机密吗?

  12. 12

    我应该为我的角度指令命名空间吗?

  13. 13

    我应该为我的TenantId列编制索引吗?

  14. 14

    我应该为我的 TypeScript 模块编写 TypeScript 定义吗?

  15. 15

    我应该考虑将SpriteKit用于非游戏iOS应用程序吗?

  16. 16

    iOS RSS Feed应用程序:我应该为每个视图控制器创建一个类吗?

  17. 17

    iOS RSS Feed应用程序:我应该为每个视图控制器创建一个类吗?

  18. 18

    我应该为不同的设备制作单独的“响应脚本”吗?

  19. 19

    我应该为所有程序集强力命名吗?

  20. 20

    我应该为Android位图释放内存吗?

  21. 21

    我应该为root帐户启用rsync吗?

  22. 22

    我应该为此使用Xpath或regexp吗?

  23. 23

    我应该为测试编写测试吗?

  24. 24

    我应该为这个警告消息担心吗?

  25. 25

    我应该为Kubernetes禁用TCP时间戳吗?

  26. 26

    我应该为新项目使用“请求”模块吗?

  27. 27

    我应该为所有API添加ETag吗

  28. 28

    我应该为每个属性使用单独的useState吗

  29. 29

    我应该为root帐户启用rsync吗?

热门标签

归档