【问题标题】:what is the best way for real-time communication between android clients? [closed]android客户端之间实时通信的最佳方式是什么? [关闭]
【发布时间】:2017-11-26 10:51:28
【问题描述】:

我必须将新功能添加到 android 应用程序 (4.1 api 16)、java 服务器 (1.7) 作为后端与 tomcat 7。通过 http 请求和 json 进行通信。对于应用程序的新功能,它要求用户可以实时交流,所以我发现了不同的可能性,比如 长轮询,websocket。服务器发送的事件。 任何建议都非常感谢。

【问题讨论】:

  • 可能会因为“基于意见”而关闭,但这是一个有趣的问题。
  • 也取决于要求。如果通信要求较低,我建议您使用 Firebase。
  • @ShubhankGupta 客户端应该能够建立他们交换数据的组。 Firebase 不是一个选项,因为它不是免费的。
  • 但是你也可以使用firebase实现群聊
  • 我已经尝试过在群聊中使用 firebase 它对我有好处

标签: java android tomcat real-time


【解决方案1】:

不仅仅是 WhatsApp,还有大量即时通讯工具。我们收集了最好的 Android 产品,因此您可以选择最适合您个人口味和需求的一款。

我个人会推荐 Firebase 作为聊天信使的最佳实时应用程序之一。我在下面列出了我的原因:

Documentation, Support, Flexibility, Scope, Reliability, Cost, Complexity

下面列出的一些您也可以使用的第三方:

PubNub

PubNub 提供超过 70 种不同的 SDK,供您开发具有全球分布数据中心和自动复制和故障转移功能的可扩展、实时、数据流应用程序。

操作系统:FreeBSD

FreeBSD 是 WhatsApp 所依赖的操作系统。 内核服务 - 进程管理、内存管理、I/O 系统、进程间通信。

YAWS(又一个 Web 服务器)

YAWS 是一个 Erlang Web 服务器。它是用 Erlang 编写的,它使用 Erlang 作为其嵌入式语言,类似于 Apache 中的 PHP。

Ejabberd (XMPP) 服务器

Ejabberd (XMPP) 服务器可促进两个或多个用户之间的实时即时消息传输。即使在高峰流量下也具有高可靠性和可持续性,这也是 WhatsApp 开发人员选择 Ejabberd 的原因。 XMPP 协议也进行了定制,以加快登录和重新登录会话。

二郎

用于构建具有高可用性要求的大规模可扩展软件实时系统的编程语言。运行时系统内置了对并发、分布和容错的支持。

PHP 关于 PHP 集成,双方也有几种沟通方式。您可以使用 PHP Erlang Bridge 将聊天与您的 PHP 代码集成。 PEB (PHP - Erlang - Bridge) 是一个开源的 PHP 扩展,用于将 PHP 作为 Erlang 节点运行。

XMPP

基于 XML 的面向消息的中间件的通信协议。 XMPP 比 HTTP 更快,仅用于实时聊天应用程序。它确保网络安全并用于传输消息。 HTML5 WebSockets,一种促进双向通信的通信技术。

数据库(Mnesia)

Mnesia DB 处理繁重的数据库管理任务。 Mnesia 是一个多用户分布式 DBMS,它也恰好是 ERLANG 的默认 DB。 Mnesia 有助于实现更快的请求响应,从而提高整体效率。

Plz check reference url

【讨论】:

    猜你喜欢
    • 2020-07-28
    • 2011-06-16
    • 2013-01-02
    • 1970-01-01
    • 1970-01-01
    • 2015-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多