MQTT客户端服务器请求响应

时间:2016-02-19 09:31:48

标签: android apache publish-subscribe mqtt activemq-artemis

移动应用正在将其位置更新为服务器,服务器会响应内容。

是否可以使用MQTT(Apache Artemis)从移动应用程序向服务器发送实时位置更新。

在这种情况下是否需要我的服务器应用程序(PHP)订阅主题?

服务器必须通过单个订阅频道处理所有位置更新。这可能会减慢服务器的速度吗?

Flow就像--Android客户端定期将用户的位置(例如30.Sns)发送到服务器,PHP服务器返回最近的用户,应用程序将其显示在地图上。

这是我计划使用MQTT的架构 每个移动应用用户ID都将被视为主题,以便我们可以向每个用户发送响应。 PHP服务器将被视为一个主题,例如" LOCATION_TRACKER&#34 ;. 所有移动应用程序都将位置发布到服务器主题" LOCATION_TRACKER"。 服务器通过使用其ID作为主题来准备列表并将响应发布给各个用户。

在这个原型中,PHP服务器怀疑主题" LOCATION_TRACKER"事实上,所有移动应用程序都发布到一个主题。 考虑有数百万用户如何扩展PHP服务器,还是有其他方法可以做到这一点?

该应用程序将针对至少1000万用户。应该支持一半的并发用户。

1 个答案:

答案 0 :(得分:0)

完全可以将位置更新从移动设备发送到MQTT代理,例如查看OwnTracks项目。

对于您的秒数,处理大量消息时应用程序的行为完全取决于该应用程序的架构方式。对于大容量系统,通常的模式是使用本地队列和线程池来分配负载,但这完全取决于您需要对数据执行的操作。