我正在开展项目,我需要改进/重新设计Android设备的现有实时跟踪。 Android设备每45秒向我们的服务器发送一次位置+更多元数据,我们会在地图中更新这些详细信息以显示设备位置。 Android设备通过GPRS提供移动互联网连接。当前的架构非常简单我们有一个servlet,我们的android设备每45秒调用一次。这种方法不可靠,因为服务器不会实时接收来自所有设备的数据。如果100个设备正在发送数据,那么我们从50-60个设备接收数据,并且从设备到服务器的数据总是有一些大量的延迟。因为可以有1000-2000个设备,因此可扩展性是另一个需要考虑的问题。
使用Amazon SNS / SQS或Google Cloud Messaging(GCM)等消息服务是否可以改善此问题?什么是基本的高级组件需要进行实时跟踪?如果android设备首先与这些服务通信,而服务器从这些服务获取数据,那么它可能会解决可扩展性问题。