4

我正在编写一个移动交易应用程序(android/ios),我需要有关将应用程序连接到服务器的最佳方式的建议(messageQ)

  • 如果我使用原始 TCP 连接,如果我的用户位于公司 wifi 后面(受防火墙保护),他们会有问题吗?如果是,在这种情况下,网络套接字是更好的解决方案吗?

  • 对于后端服务器,在使用 zeroMq 进行研究之后,我相信像 rabbitmq 这样的成熟代理是一个更好的选择。现在,如果我使用本地应用程序的 Web 套接字连接,Rabbit MQ 有一个 sockJS-AMQP 桥。但我不确定是否有 java 和 iOS Web 套接字客户端与 sockJS 服务器对话。非常感谢任何有经验的观点

4

1 回答 1

4

你考虑过使用 MQTT 吗?

如果您不需要 AMQP,您也可以直接使用 MQTT 代理,例如http://mosquitto.org/http://www.hivemq.com/

在这里(https://github.com/owntracks),您可以找到一些适用于 iPhone 和 Android 的现成库。

为了解决防火墙问题,MQTT 可以通过 HTTP 使用。

您可以在此处阅读: http ://www.hivemq.com/mqtt-over-websockets-with-hivemq/ 或此处http://mqtt.org/wiki/doku.php/mqtt_over_websockets

这篇文章也可以帮助你:(https://www.ibm.com/developerworks/community/blogs/sowhatfordevs/entry/using_mqtt_protocol_advantages_over_http_in_mobile_application_development5?lang=en

对于 iPhone 应用程序,我直接使用 MQTT 并使用 MQTT 插件作为服务器 RabbitMQ http://www.rabbitmq.com/mqtt.html

我希望它有用 

于 2014-04-12T10:15:02.273 回答